首頁 >Java >java教程 >java實作建立臨時文件然後在程式退出時自動刪除文件

java實作建立臨時文件然後在程式退出時自動刪除文件

高洛峰
高洛峰原創
2017-01-11 14:55:193416瀏覽

透過java的File類別建立臨時文件,然後在程式退出時自動刪除臨時文件。下面將透過建立一個JFrame介面,點擊建立按鈕在目前目錄下方建立temp資料夾且建立以mytempfile******.tmp格式的文字檔案。程式碼如下:

import java.io.*;
import java.util.*;
import javax.swing.*;
import java.awt.event.*;
/**
 * 功能: 创建临时文件(在指定的路径下)
 */
public class TempFile implements ActionListener
{
    private File tempPath;
    public static void main(String args[]){
        TempFile ttf = new TempFile();
        ttf.init();
        ttf.createUI();
    }
    //创建UI
    public void createUI()
    {
        JFrame frame = new JFrame();
        JButton jb = new JButton("创建临时文件");
        jb.addActionListener(this);
        frame.add(jb,"North"); 
        frame.setSize(200,100);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
    }
    //初始化
    public void init(){
        tempPath = new File("./temp");
        if(!tempPath.exists() || !tempPath.isDirectory())
        {
            tempPath.mkdir();  //如果不存在,则创建该文件夹
        }
    }
    //处理事件
    public void actionPerformed(ActionEvent e)
    {
        try
        {
            //在tempPath路径下创建临时文件"mytempfileXXXX.tmp"
            //XXXX 是系统自动产生的随机数, tempPath对应的路径应事先存在
            File tempFile = File.createTempFile("mytempfile", ".txt", tempPath);
            System.out.println(tempFile.getAbsolutePath());
            FileWriter fout = new FileWriter(tempFile);
            PrintWriter out = new PrintWriter(fout);
            out.println("some info!" );
            out.close(); //注意:如无此关闭语句,文件将不能删除
            //tempFile.delete(); 
            tempFile.deleteOnExit();
        }
        catch(IOException e1)
        {
            System.out.println(e1);
        }
    }
}

效果圖:

java實作建立臨時文件然後在程式退出時自動刪除文件

點擊建立臨時檔案效果圖:

java實作建立臨時文件然後在程式退出時自動刪除文件

非常簡單實用的功能,希望小夥伴們能夠喜歡。

更多java實作建立臨時檔案然後在程式退出時自動刪除檔案相關文章請關注PHP中文網!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn