Obstajata dva načina za brisanje datoteke v Javi:
- Uporaba File.delete() metoda
- Uporaba File.deleteOnExit() metoda
Metoda Java File.delete().
V Javi lahko izbrišemo datoteko z uporabo File.delete() metoda razreda File. Metoda delete() izbriše datoteko ali imenik, označen z abstraktnim imenom poti. Če je ime poti imenik, mora biti ta imenik prazen za brisanje. Podpis metode je:
public boolean delete()
Metoda vrne true, če je bila datoteka ali imenik uspešno izbrisana, sicer vrne false.
Primer
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(); } } }
Izhod:
Ko datoteka obstaja.
Ko datoteka ne obstaja.
Metoda Java File.deleteOnExit().
The File.deleteOnExit() metoda prav tako izbriše datoteko ali imenik, definiran z abstraktnim imenom poti. Metoda deleteOnExit() izbriše datoteko v obratnem vrstnem redu. Datoteko izbriše, ko se JVM prekine. Ne vrne nobene vrednosti. Ko je zahteva podana, je ni mogoče preklicati. Zato je treba to metodo uporabljati previdno.
Podpis metode je:
public void deleteOnExit()
Običajno to metodo uporabimo, ko želimo izbrisati začasno datoteko. Začasna datoteka se uporablja za shranjevanje manj pomembnih in začasnih podatkov, ki jih je treba vedno izbrisati, ko se JVM prekine.
Če želimo datoteko .temp izbrisati ročno, lahko uporabimo metodo File.delete().
Primer
Naslednji primer ustvari začasno datoteko z imenom abc.temp in jo izbriše, ko se program prekine.
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(); } } }
Izhod:
Oglejmo si še en primer, ki izbriše besedilno datoteko.
Primer
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(); } } }
Izhod: