Java-ohjelma tyhjän ja tyhjän hakemiston poistamiseksi

Tässä esimerkissä opitaan poistamaan Java: sta tyhjä hakemisto, tyhjä hakemisto ja hakemisto, jossa on tyhjä alihakemisto.

Tämän esimerkin ymmärtämiseksi sinulla on oltava tieto seuraavista Java-ohjelmointiaiheista:

  • Java-tiedostoluokka
  • Java-rekursio

Esimerkki 1: Java-ohjelma tyhjän hakemiston poistamiseksi

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

Yllä olevassa esimerkissä olemme käyttäneet luokan delete()menetelmää Filehakemiston nimeltä Hakemisto poistamiseksi .

Jos hakemisto on läsnä, näytetään viesti Hakemisto poistettu . Muussa tapauksessa hakemistoa ei löydy .

Esimerkki 2: Poista ei-tyhjä hakemisto

Jos haluat poistaa tyhjän hakemiston Java-sovelluksessa, meidän on ensin poistettava kaikki hakemistossa olevat tiedostot. Sitten voimme poistaa hakemiston.

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

Yllä olevassa esimerkissä olemme käyttäneet for-eachsilmukkaa kaikkien hakemistossa olevien tiedostojen poistamiseen. Kun kaikki tiedostot on poistettu, käytimme delete()hakemiston poistomenetelmää.

Esimerkki 3: Poista tyhjä hakemisto rekursiivisesti

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

Oletetaan, että meillä on ei-tyhjä hakemisto nimeltä Hakemisto. Hakemisto sisältää 2 tiedostoa nimeltään file1.txt ja file2.txt sekä ei-tyhjän alihakemiston nimeltä Alihakemisto. Jälleen, alihakemisto sisältää tiedoston nimeltä file11.txt.

Nyt kun suoritamme ohjelmaa, saamme seuraavan tuloksen.

 Hakemisto file1.txt poistetaan Hakemisto file2.txt poistetaan Hakemisto alihakemisto tiedosto11.txt poistetaan Hakemisto alihakemisto poistetaan Hakemisto poistetaan

Tässä poistetaan ensin 2 tiedostoa, sitten rekursiivinen toiminto poistaa tiedostot alihakemistosta. Kun alihakemisto on tyhjä, se poistetaan. Ja lopuksi hakemisto poistetaan.

Mielenkiintoisia artikkeleita...