Hay dos métodos para eliminar un archivo en Java:
- Usando Archivo.eliminar() método
- Usando Archivo.deleteOnExit() método
Método Java File.delete()
En Java, podemos eliminar un archivo usando el Archivo.eliminar() método de la clase Archivo. El método eliminar() elimina el archivo o directorio indicado por el nombre de ruta abstracto. Si el nombre de la ruta es un directorio, ese directorio debe estar vacío para poder eliminarlo. La firma del método es:
public boolean delete()
El método devuelve verdadero si el archivo o directorio se eliminó correctamente; de lo contrario, devuelve falso.
Ejemplo
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(); } } }
Producción:
Cuando el archivo existe.
Cuando el archivo no existe.
Método Java File.deleteOnExit()
El Archivo.deleteOnExit() El método también elimina el archivo o directorio definido por la ruta abstracta. El método deleteOnExit() elimina el archivo en orden inverso. Elimina el archivo cuando finaliza JVM. No devuelve ningún valor. Una vez realizada la solicitud, no es posible cancelar la solicitud. Por tanto, este método debe utilizarse con cuidado.
La firma del método es:
public void deleteOnExit()
Normalmente utilizamos este método cuando queremos eliminar el archivo temporal. Se utiliza un archivo temporal para almacenar los datos temporales y menos importantes, que siempre deben eliminarse cuando finaliza JVM.
Si queremos eliminar el archivo .temp manualmente, podemos usar el método File.delete().
Ejemplo
El siguiente ejemplo crea un archivo temporal llamado abc.temp y lo elimina cuando finaliza el programa.
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(); } } }
Producción:
Veamos otro ejemplo que elimina un archivo de texto.
Ejemplo
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(); } } }
Producción: