Если приложению Java необходимо создать временный файл для некоторой бизнес-логики или модульного тестирования, то нам нужно убедиться, что эти временные файлы удаляются, когда они не нужны. Давайте узнаем, как удалить временный файл в Java.
1. Использование File.deleteOnExit()
Чтобы удалить файл при выходе из приложения или его завершении, можно использовать метод deleteOnExit(). Вызов этого метода для удаления файла или каталога, который уже зарегистрирован для удаления, не имеет никакого эффекта.
Обратите внимание, что удаление файла будет предпринято только для нормального завершения работы виртуальной машины. Если программа завершится ненормально, файл может быть не удален.
После запроса на удаление отменить запрос невозможно.
Пример 1: Удаление временного файла в конце программы
File temp;try{temp = File.createTempFile("myTempFile", ".txt");temp.deleteOnExit(); //Delete when JVM exits//Perform other operations}catch(IOException e){e.printStackTrace();}
2. Использование File.delete()
Чтобы удалить временный файл немедленно, не дожидаясь завершения работы приложения, мы можем напрямую использовать метод delete().
Если он вызывается для каталога, то для удаления каталог должен быть пустым.
Пример 2: Java-программа для удаления файла или пустого каталога
File temp;try{temp = File.createTempFile("myTempFile", ".txt");//Perform other operationstemp.delete(); //Delete the file immediately}catch(IOException e){e.printStackTrace();}