Java programm tühja ja tühja kataloogi kustutamiseks

Selles näites õpime Java-s kustutama tühja kataloogi, tühja kataloogi ja tühja alamkataloogiga kataloogi.

Selle näite mõistmiseks peaksid teil olema teadmised järgmistest Java programmeerimise teemadest:

  • Java failiklass
  • Java rekursioon

Näide 1: Java-programm tühja kataloogi kustutamiseks

 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(); ) ) )

Ülaltoodud näites oleme kataloogi nimega Directory kustutamiseks kasutanud klassi delete()meetodit .File

Kui kataloog on olemas, kuvatakse teade Kataloog kustutatud . Vastasel juhul kuvatakse kataloogi ei leitud .

Näide 2: Kustutage mittetühi kataloog

Java-s peame mittetühja kataloogi kustutamiseks kõigepealt kustutama kõik kataloogis olevad failid. Seejärel saame kataloogi kustutada.

 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(); ) ) )

Ülaltoodud näites oleme for-eachtsüklit kasutanud kõigi kataloogis olevate failide kustutamiseks. Kui kõik failid on kustutatud, kasutasime delete()kataloogi kustutamiseks meetodit.

Näide 3: Kustutage mittetühi kataloog rekursiivselt

 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(); ) ) )

Oletame, et meil on kataloog, mille nimi pole kataloog. Kataloog sisaldab 2 faili nimega failid1.txt ja fail2.txt ning mittetühja alamkataloogi nimega Alamkataloog. Jällegi sisaldab alamkataloog faili nimega file11.txt.

Nüüd, kui programmi käivitame, saame järgmise väljundi.

 Kataloog file1.txt kustutatakse Kataloog file2.txt kustutatakse Kataloog alamkataloog file11.txt kustutatakse Kataloog alamkataloog kustutatakse Kataloog kustutatakse

Siin kustutatakse kõigepealt 2 faili, seejärel rekursiivne funktsioon kustutab alamkataloogis olevad failid. Kui alamkataloog on tühi, siis see kustutatakse. Ja lõpuks, kataloog kustutatakse.

Huvitavad Artiklid...