java实现创建临时文件然后在程序退出时自动删除文件

 更新时间:2015年02月28日 15:12:49   投稿:hebedich  
这篇文章主要介绍了java实现创建临时文件然后在程序退出时自动删除文件,从个人项目中提取出来的,小伙伴们可以直接拿走使用。

通过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);
        }
    }
}

效果图:

点击创建临时文件效果图:


非常简单实用的功能,希望小伙伴们能够喜欢。

相关文章

  • mybatis注解之@Mapper和@MapperScan的使用

    mybatis注解之@Mapper和@MapperScan的使用

    这篇文章主要介绍了mybatis注解之@Mapper和@MapperScan的使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • IDEA一致卡在build时间过长问题解决

    IDEA一致卡在build时间过长问题解决

    有很多小伙伴在起项目的时候巨慢,特别影响开发效率,本文主要介绍了IDEA一致卡在build时间过长问题解决,具有一定的参考价值,感兴趣的可以了解一下
    2024-06-06
  • Java数据库连接池之proxool_动力节点Java学院整理

    Java数据库连接池之proxool_动力节点Java学院整理

    Proxool是一种Java数据库连接池技术。方便易用,便于发现连接泄漏的情况
    2017-08-08
  • spring cloud 的监控turbine-rabbitmq的示例

    spring cloud 的监控turbine-rabbitmq的示例

    这篇文章主要介绍了spring cloud 的监控turbine-rabbitmq的示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • Spring底层机制环境搭建全过程

    Spring底层机制环境搭建全过程

    本文介绍了如何创建和使用Spring框架,包括模块创建、依赖引入、环境搭建、Bean的生命周期管理、AOP编程以及代码托管,通过实际操作和代码示例,详细讲解了Spring的核心概念和功能
    2024-12-12
  • java集合List快速实现重复判断的方法小结

    java集合List快速实现重复判断的方法小结

    在java编写代码中经常会遇到某些重复判定或者去重的操作,本文主要为大家介绍了几个常用方法,感兴趣的小伙伴可以跟随不想一起学习一下
    2024-12-12
  • Tornadofx学习笔记之IconTextFx开源库整合5000+个字体图标

    Tornadofx学习笔记之IconTextFx开源库整合5000+个字体图标

    这篇文章主要介绍了Tornadofx学习笔记之IconTextFx开源库整合5000+个字体图标的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12
  • springmvc处理模型数据ModelAndView过程详解

    springmvc处理模型数据ModelAndView过程详解

    这篇文章主要介绍了springmvc处理模型数据ModelAndView过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • 详解Spring Bean 之间的特殊关系

    详解Spring Bean 之间的特殊关系

    在 Spring 容器中,两个 Bean 之间除了通过 <ref> 建立依赖关系外,还存在着一些特殊关系。这篇文章给大家想想介绍了Spring Bean 之间的特殊关系,非常不错,具有参考借鉴价值,需要的朋友参考下
    2018-05-05
  • java中实现对象排序的两种方法(Comparable,Comparator)

    java中实现对象排序的两种方法(Comparable,Comparator)

    这篇文章主要给大家介绍了关于java中实现对象排序的两种方法,一种是实现Comparable进行排序,另一种是实现Comparator进行排序,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-12-12

最新评论