Java program za brisanje praznog i praznog direktorija

U ovom ćemo primjeru naučiti brisati prazan direktorij, neprazan direktorij i direktorij s nepraznim poddirektorijom na Javi.

Da biste razumjeli ovaj primjer, trebali biste imati znanje o sljedećim temama programiranja Java:

  • Klasa Java datoteke
  • Java rekurzija

Primjer 1: Java program za brisanje praznog direktorija

 import java.io.File; class Main ( public static void main(String() args) ( try ( // create a new file object File directory = new File("Directory"); // delete the directory boolean result = directory.delete(); if(result) ( System.out.println("Directory Deleted"); ) else ( System.out.println("Directory not Found"); ) ) catch (Exception e) ( e.getStackTrace(); ) ) )

U gornjem primjeru koristili smo delete()metodu Fileklase za brisanje direktorija nazvanog Direktorij .

Ovdje je, ako je prisutan direktorij, prikazana poruka Imenik izbrisan . Inače se prikazuje direktorij nije pronađen .

Primjer 2: Izbrišite direktorij koji nije prazan

U Javi, da bismo izbrisali neprazan direktorij, prvo moramo izbrisati sve datoteke prisutne u direktoriju. Zatim možemo izbrisati direktorij.

 import java.io.File; class Main ( public static void main(String() args) ( try ( // create a new file object File directory = new File("Directory"); // list all the files in an array File() files = directory.listFiles(); // delete each file from the directory for(File file : files) ( System.out.println(file + " deleted."); file.delete(); ) // delete the directory if(directory.delete()) ( System.out.println("Directory Deleted"); ) else ( System.out.println("Directory not Found"); ) ) catch (Exception e) ( e.getStackTrace(); ) ) )

U gornjem primjeru koristili smo for-eachpetlju za brisanje svih datoteka prisutnih u direktoriju. Jednom kada su sve datoteke izbrisane, delete()metodom smo koristili brisanje direktorija.

Primjer 3: Rekurzivno izbrišite direktorij koji nije prazan

 import java.io.File; class Main ( public static void deleteDirectory(File directory) ( // if the file is directory or not if(directory.isDirectory()) ( File() files = directory.listFiles(); // if the directory contains any file if(files != null) ( for(File file : files) ( // recursive call if the subdirectory is non-empty deleteDirectory(file); ) ) ) if(directory.delete()) ( System.out.println(directory + " is deleted"); ) else ( System.out.println("Directory not deleted"); ) ) public static void main(String() args) ( try ( // create a new file object File directory = new File("Directory"); Main.deleteDirectory(directory); ) catch (Exception e) ( e.getStackTrace(); ) ) )

Evo, pretpostavimo da imamo neprazan direktorij nazvan Directory. Direktorij sadrži 2 datoteke s imenom file1.txt i file2.txt i neprazan poddirektorij pod nazivom Poddirektorij. Ponovno, poddirektorij sadrži datoteku nazvanu file11.txt.

Sada, kada pokrenemo program, dobit ćemo sljedeći izlaz.

 Direktorij file1.txt se briše Direktorij file2.txt se briše Direktorij Poddirektorij file11.txt se briše Direktorij Poddirektorij se briše Direktorij se briše

Ovdje se prvo brišu 2 datoteke, a zatim rekurzivna funkcija briše datoteke unutar poddirektorijuma. Jednom je poddirektorij prazan i briše se. I, konačno, Direktorij se briše.

Zanimljivi članci...