Java不删除自己创建的文件
关于Java不删除自己创建的文件,java,file,Java,File,关于File.delete()没有按预期工作,我在这里看到了类似的问题,但是这与Java实际创建文件的方式略有不同,但在完成文件后不会将其删除 File genFile = new File(parsed); ... sends file data across socket ... genFile.delete(); 生成的文件(genFile)是在程序的早期生成并写入的,但是当我尝试删除它时,文件只保留在目录中-没有错误消息等。对可能发生的情况有什么想法吗 File.delete()不正
File.delete()
没有按预期工作,我在这里看到了类似的问题,但是这与Java实际创建文件的方式略有不同,但在完成文件后不会将其删除
File genFile = new File(parsed);
... sends file data across socket ...
genFile.delete();
生成的文件(genFile
)是在程序的早期生成并写入的,但是当我尝试删除它时,文件只保留在目录中-没有错误消息等。对可能发生的情况有什么想法吗 File.delete()
不正确,因为它对错误保持沉默
试一试
它可能会向您显示无法删除文件的原因。(也可能不是:)在尝试删除()之前,需要关闭()文件连接。添加
genFile.close();
以前
genFile.delete();
当您尝试删除文件时,流不会被刷新,因此请先关闭流并删除文件。如果您在Windows或*Unix下运行,则该信息将是相关的 Windows不会删除任何应用程序打开的文件;删除前请关闭该文件
Unix变体应该继续删除该文件(释放inode)。写入该文件后是否正确关闭了输出流?或从中读取后的任何输入流?设置genFile=null;除非对象被垃圾收集,否则文件通常不会被删除。请共享从java创建文件的代码。
genFile.delete();