27 Mart 2014 Perşembe

Java IO - JAVA İLE DİZİN(DIRECTORY) SİLME İŞLEMİ

Java ile bir dizini silebilmek için File sınıfının geriye boolean bir değer döndüren delete() metodunu kullanılır. Silme işlemi gerçekleşirse  true, başarısız ise false değeri dönecektir. 

#ÖNEMLİ : Dizin içerisinde dosyalar mevcut ise silme işlemi başarısız olacaktır.

Eğer dizin içerisini tümüyle silmek istiyorsak silme metodunu yinelemeli(recursive) bir şekilde kullanarak alt klasörler ve dosyalarla birlikte ilgili dizini tamamen silebiliriz.


import java.io.File;
import java.io.IOException;

public class Dosyalar {

 public static void main(String[] args) {
  
  try {
     File silinecekDosya = new File("C:\\dersler");
     dizinSil(silinecekDosya);
  } 

     catch (Exception e) {
     e.printStackTrace();
   }
 }

 public static void dizinSil(File silinecekDizin) throws IOException {
  if (!silinecekDizin.exists())
   throw new IllegalArgumentException("İlgili Dizin Mevcut Değil : "
     + silinecekDizin.getAbsolutePath());

     // File nesnesine verilen yolun dizin olup olmadigini kontrol et degilse dosya dogrudan silinecektir.
     if (silinecekDizin.isDirectory()) {
     
     // list() metodu ile dizin icerisindeki dosya ve alt dizinlerin isimlerini al
     String[] dizinDosyalari = silinecekDizin.list();

     // Dizin icerigi bos degilse oncelikle alt elemanlari birer birer sil
     if (dizinDosyalari.length > 0) {
        for (int i = 0; i < dizinDosyalari.length; i++) {
        File dosya = new File(silinecekDizin, dizinDosyalari[i]);
        dizinSil(dosya);
        }
     }
  }

     if (silinecekDizin.delete())
     System.out.println(silinecekDizin.getAbsolutePath()
     + " Dizini Başarı  İle Silindi.");
     else
     System.out.println(silinecekDizin.getAbsolutePath()+ " Dizini Silinemedi!");
 }
}

<-- #YARARLANILAN KAYNAKLAR# -->

Aşağıdaki adreslerde bu gibi örnekler ve daha fazlasını bulabilirsiniz. Burada paylaşılan yazı ve örnekler kendimce bulduğum ve hazırladığım notlardır.

http://www.java2s.com/Tutorial/Java/0180__File/Removeadirectoryandallofitscontents.htm
http://www.mkyong.com/java/how-to-delete-directory-in-java/

0 yorum:

Yorum Gönder

Java4Fun Copyright © 2011 | Template created by O Pregador | Powered by Templates de luxo