我有一个问题,请指导我:)

我写此方法:

public void createTempFile() throws Exception{
                //CHTYPE & FINAL are Vector 
                File file = File.createTempFile("Temp", ".txt", new File(System.getProperty("user.dir")));
                file.deleteOnExit();
                FileWriter fw = new java.io.FileWriter(file);
                for (String aContent : CHTYPE) fw.write(aContent + "\n");
                fw.close();
                traffic tr = new traffic(file);
                for (int i = 0; i < tr.result.size(); i++)
                    FINAL.add(tr.result.get(i));
                getEHRACT(); //Calculating in some integer & some Double
        }

当我运行在IDE(IntelliJ IDEA的)这种方法它的正常运行和该行之后的临时文件删除

file.deleteOnExit(); 

但是当我让我的应用程序作为一个jar文件这个文件不会删除,直到我离开我的应用程序和一些计算不执行:(为什么?

请帮我谢谢...

有帮助吗?

解决方案

您的文件不被删除,直到退出应用程序,因为...这是你告诉它做的事。如果你想删除一个文件向右走,然后你使用它的方法delete

file.delete();

其他提示

在“的OnExit”部分是指“从VM退出”,而不是“上从我的函数退出”或任何

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top