java實現(xiàn)創(chuàng)建臨時文件然后在程序退出時自動刪除文件
通過java的File類創(chuàng)建臨時文件,然后在程序退出時自動刪除臨時文件。下面將通過創(chuàng)建一個JFrame界面,點擊創(chuàng)建按鈕在當(dāng)前目錄下面創(chuàng)建temp文件夾且創(chuàng)建一個以mytempfile******.tmp格式的文本文件。代碼如下:
import java.io.*;
import java.util.*;
import javax.swing.*;
import java.awt.event.*;
/**
* 功能: 創(chuàng)建臨時文件(在指定的路徑下)
*/
public class TempFile implements ActionListener
{
private File tempPath;
public static void main(String args[]){
TempFile ttf = new TempFile();
ttf.init();
ttf.createUI();
}
//創(chuàng)建UI
public void createUI()
{
JFrame frame = new JFrame();
JButton jb = new JButton("創(chuàng)建臨時文件");
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(); //如果不存在,則創(chuàng)建該文件夾
}
}
//處理事件
public void actionPerformed(ActionEvent e)
{
try
{
//在tempPath路徑下創(chuàng)建臨時文件"mytempfileXXXX.tmp"
//XXXX 是系統(tǒng)自動產(chǎn)生的隨機數(shù), tempPath對應(yīng)的路徑應(yīng)事先存在
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(); //注意:如無此關(guān)閉語句,文件將不能刪除
//tempFile.delete();
tempFile.deleteOnExit();
}
catch(IOException e1)
{
System.out.println(e1);
}
}
}
效果圖:
點擊創(chuàng)建臨時文件效果圖:
非常簡單實用的功能,希望小伙伴們能夠喜歡。
相關(guān)文章
詳解微信開發(fā)之Author網(wǎng)頁授權(quán)
微信開發(fā)中,經(jīng)常有這樣的需求:獲得用戶頭像、綁定微信號給用戶發(fā)信息,那么實現(xiàn)這些的前提就是授權(quán)!本文對此進行系統(tǒng)介紹,需要的朋友一起來看下吧2016-12-12springboot項目中的bootstrap.yml配置不生效的原因及解決(沒有自動提示)
新創(chuàng)建一個 springboot項目,添加了 bootstrap.yml 文件,發(fā)現(xiàn)文件并沒有如預(yù)期變成綠色葉子,編寫的時候也沒有自動提示,啟動的時候,發(fā)現(xiàn)端口是8080,由此發(fā)現(xiàn)配置并沒有生效,所以本文給大家講解了springboot項目中的bootstrap.yml配置不生效的原因及解決2024-01-01Spring中使用atomikos+druid實現(xiàn)經(jīng)典分布式事務(wù)的方法
這篇文章主要介紹了Spring中使用atomikos+druid實現(xiàn)經(jīng)典分布式事務(wù)的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-06-06淺談Java序列化和反序列化為何要實現(xiàn)Serializable接口
這篇文章主要介紹了淺談Java序列化和反序列化為何要實現(xiàn)Serializable接口,序列化最重要的作用是在傳遞和保存對象時.保證對象的完整性和可傳遞性,對象轉(zhuǎn)換為有序字節(jié)流,以便在網(wǎng)絡(luò)上傳輸或者保存在本地文件中,需要的朋友可以參考下2023-12-12解決Maven項目加載spring bean的配置xml文件會提示找不到問題
這篇文章主要介紹了解決Maven項目加載spring bean的配置xml文件會提示找不到問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-08-08