Удаление временного файла в Java

Временные файлы предназначены для хранения маловажной и временной информации и они должны удаляться в момент выхода из программы. В классе File определен метод, выполняющий эту операцию: метод File.deleteOnExit(). Если быть более точным, то временные файлы и каталоги, отмеченные с помощью этого метода, должны быть удалены в момент остановки виртуальной машины Java (JVM), запущенной для исполнения нашей программы.


Разумеется, при работе с временными файлами, мы можем удалять их «вручную» с помощью метода File.delete(). Пример удаления файла «вручную» показан в соответствующей статье.
package ru.j4web.examples.java.io;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;

public class DeleteTempFileExample {

    private static final String TEMP_FILE_NAME = "write-temp-file";

    private static final String TEMP_FILE_EXT = ".tmp";

    private static final String TEMP_FILE_CONTENT = "Это содержимое "
            + "временного файла.";

    public static void main(String[] args) {
        try {
            final File temp = File.createTempFile(TEMP_FILE_NAME,
                    TEMP_FILE_EXT);
            final FileWriter fw = new FileWriter(temp);
            try (BufferedWriter bw = new BufferedWriter(fw)) {
                bw.write(TEMP_FILE_CONTENT);
            }
            temp.deleteOnExit();
            System.out.println("Временный файл: " + temp.getAbsolutePath());
        } catch (IOException ex) {
            Logger.getLogger(DeleteTempFileExample.class.getName())
                    .log(Level.SEVERE, null, ex);
        }
    }
}

После завершения работы программы мы можем проверить каталог с временными файлами: временного файла, созданного в процессе работы программы, там не будет.

Полезная информация

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...

Оставить комментарий

Ваш email нигде не будет показанОбязательные для заполнения поля помечены *

*