Program Java untuk Menghapus Direktori Kosong dan Tidak Kosong

Dalam contoh ini, kita akan belajar menghapus direktori kosong, direktori kosong, dan direktori dengan subdirektori tidak kosong di Java.

Untuk memahami contoh ini, anda harus mempunyai pengetahuan mengenai topik pengaturcaraan Java berikut:

  • Kelas Fail Java
  • Pengembalian Java

Contoh 1: Program Java untuk menghapus direktori kosong

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

Dalam contoh di atas, kami telah menggunakan delete()kaedah Filekelas untuk menghapus direktori bernama Direktori .

Di sini, jika direktori ada, maka mesej Direktori Dihapus ditunjukkan. Jika tidak, Direktori tidak dijumpai ditunjukkan.

Contoh 2: Padamkan direktori yang tidak kosong

Di Java, untuk menghapus direktori yang tidak kosong, pertama-tama kita mesti menghapus semua fail yang ada di dalam direktori. Kemudian, kita boleh memadam direktori.

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

Dalam contoh di atas, kami telah menggunakan for-eachgelung untuk menghapus semua fail yang ada di direktori. Setelah, semua fail dihapus, kami menggunakan delete()kaedah untuk menghapus direktori.

Contoh 3: Padam direktori yang tidak kosong secara berulang

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

Di sini, anggaplah kita mempunyai direktori kosong yang bernama Direktori. Direktori mengandungi 2 fail bernama file1.txt dan file2.txt dan subdirektori tidak kosong bernama Subdirectory. Sekali lagi, Subdirektori mengandungi fail bernama file11.txt.

Sekarang, semasa kita menjalankan program, kita akan mendapat output berikut.

 Direktori file1.txt dihapus Direktori file2.txt dihapus Direktori Subdirektori file11.txt dihapus Direktori Subdirektori dihapus Direktori dihapuskan

Di sini, 2 fail pertama dihapuskan, kemudian fungsi rekursif memadam fail di dalam Subdirektori. Sekali, Subdirektori kosong, ia dihapuskan. Dan, akhirnya Direktori dihapuskan.

Artikel menarik...