Java'da bir dosyayı silmenin iki yöntemi vardır:
Java'da do ve while döngüsü
- Kullanma Dosya.delete() yöntem
- Kullanma Dosya.deleteOnExit() yöntem
Java File.delete() yöntemi
Java'da bir dosyayı aşağıdaki komutu kullanarak silebiliriz: Dosya.delete() Dosya sınıfının yöntemi. delete() yöntemi, soyut yol adıyla belirtilen dosyayı veya dizini siler. Yol adı bir dizinse, silinebilmesi için bu dizinin boş olması gerekir. Yöntem imzası:
public boolean delete()
Dosya veya dizin başarıyla silinirse yöntem true değerini döndürür, aksi takdirde false değerini döndürür.
Örnek
import java.io.File; public class FileDeleteExample { public static void main(String[] args) { try { File f= new File('E:\demo.txt'); //file to be delete if(f.delete()) //returns Boolean value { System.out.println(f.getName() + ' deleted'); //getting and printing the file name } else { System.out.println('failed'); } } catch(Exception e) { e.printStackTrace(); } } }
Çıktı:
Dosya mevcut olduğunda.
10 1 milyon
Dosya mevcut olmadığında.
Java File.deleteOnExit() yöntemi
File.deleteOnExit() yöntem aynı zamanda soyut yol adıyla tanımlanan dosyayı veya dizini de siler. deleteOnExit() yöntemi dosyayı ters sırada siler. JVM sonlandırıldığında dosyayı siler. Herhangi bir değer döndürmez. Talep yapıldıktan sonra talebin iptal edilmesi mümkün değildir. Bu nedenle bu yöntemin dikkatli kullanılması gerekmektedir.
Yöntem imzası:
public void deleteOnExit()
Genellikle geçici dosyayı silmek istediğimizde bu yöntemi kullanırız. JVM sonlandırıldığında her zaman silinmesi gereken, daha az önemli ve geçici verileri depolamak için geçici bir dosya kullanılır.
Eğer .temp dosyasını manuel olarak silmek istersek File.delete() metodunu kullanabiliriz.
Örnek
Aşağıdaki örnek, abc.temp adında geçici bir dosya oluşturur ve program sonlandırıldığında bu dosyayı siler.
Java'da rastgele değer üreteci
import java.io.File; import java.io.IOException; public class DeleteOnExitExample { public static void main(String[] args) { File temp; try { temp = File.createTempFile('abc', '.temp'); //creating a .temp file System.out.println('Temp file created at location: ' + temp.getAbsolutePath()); temp.deleteOnExit(); //delete file on runtime exit System.out.println('Temp file exists : ' + temp.exists()); } catch (IOException e) { e.printStackTrace(); } } }
Çıktı:
Metin dosyasını silen başka bir örnek görelim.
Örnek
import java.io.File; import java.io.IOException; public class DeleteTextFileExample { public static void main(String[] args) { try { File file = new File('F:\newfile.txt'); //creates a file instance file.deleteOnExit(); //deletes the file when JVM terminates System.out.println('Done'); Thread.sleep(1000); } catch(Exception e) { e.printStackTrace(); } } }
Çıktı: