Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java不删除自己创建的文件_Java_File - Fatal编程技术网

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();