Функция deleteOnExit
Функция deleteOnExit класса File планирует удаление файла
или директории при нормальном завершении работы виртуальной машины Java (JVM).
Удаление происходит только при успешном завершении работы программы.
Метод не возвращает значения и может использоваться для временных файлов,
которые должны быть очищены после выполнения программы.
Импорт
kotlinimport java.io.File
Синтаксис
kotlinfun deleteOnExit(): Unit
Пример
Создадим временный файл и запланируем его удаление при завершении программы:
kotlinval tempFile = File("temp_data.txt")
tempFile.createNewFile()
tempFile.deleteOnExit()
println("File created and scheduled for deletion")
Результат выполнения кода:
kotlinFile created and scheduled for deletion
Пример
Создадим временную директорию и запланируем ее удаление:
kotlinval tempDir = File("temp_folder")
tempDir.mkdir()
tempDir.deleteOnExit()
println("Directory created and scheduled for deletion")
Результат выполнения кода:
kotlinDirectory created and scheduled for deletion
Пример
Попытка запланировать удаление несуществующего файла:
kotlinval nonExistentFile = File("non_existent.txt")
nonExistentFile.deleteOnExit()
println("Deletion scheduled for non-existent file")
Результат выполнения кода:
kotlinDeletion scheduled for non-existent file
Пример
Создание нескольких временных файлов и их удаление при выходе:
kotlinfor (i in 1..3) {
val file = File("temp_file_$i.txt")
file.createNewFile()
file.deleteOnExit()
println("Created and scheduled: ${file.name}")
}
Результат выполнения кода:
kotlinCreated and scheduled: temp_file_1.txt
Created and scheduled: temp_file_2.txt
Created and scheduled: temp_file_3.txt
Примечания
Функция deleteOnExit не гарантирует удаление файла при аварийном
завершении работы JVM или при выключении компьютера.
Запланированные для удаления файлы нельзя отменить - они будут удалены при следующем нормальном завершении работы JVM.
Для более надежного управления временными файлами рекомендуется использовать
функцию createTempFile с автоматическим удалением.