我有问题请指导我:)
我写这个方法:
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文件时,这个文件不会删除,直到我退出我的应用程序并且某些计算没有执行:(为什么?
请帮助我谢谢......
答案 0 :(得分:4)
在您退出应用程序之前,您的文件不会被删除,因为...这就是您告诉它要做的事情。如果您想立即删除文件,请使用其delete
方法。
file.delete();
答案 1 :(得分:0)
“OnExit”部分表示“退出VM”,而不是“退出我的功能”或其他