温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Java中删除文件及文件夹删除不了的解决方法

发布时间:2021-09-15 10:43:05 来源:亿速云 阅读:507 作者:小新 栏目:开发技术

这篇文章给大家分享的是有关Java中删除文件及文件夹删除不了的解决方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

问题所在

今天在编写一个项目,流程是先创建一个临时文件夹存放生成的文件,再经过压缩导出,待导出成功后删除临时文件夹,但是怎么也删除不了,还以为是写的删除方法有问题,找来找去,试了很多方法也删除不了

Java中删除文件及文件夹删除不了的解决方法

本来以为是打包的流没关闭,但是发现流都是关闭的,后来发现,是在生成的方法里,直接new FileWriter出来的,没有关闭,在这里提醒一下,关于操作文件或者文件夹一定都会用到流,所以用到的流一定要检查一遍是否用完关闭了。

java文件删除不了的坑,特别是压缩文件

我们在用java删除文件的时候通常直接调用file.delete();方法就行了,但是很多情况下却删除不了,

下面列举一些情况

  • 1.是文件夹且不为空,这个没什么好说的,可以先删除文件夹里的文件再删除这个文件夹;

  • 2.被别的进程占用,这不仅java不能删,就算windows手动删也删不了;

  • 3.跟这个文件的流没有关闭,这个是最常见的原因了

然而我遇到的是上传一个文件,然后跟这个文件有关的流也关闭了,还是删除不了,后来发现有人把这个文件偷偷的转换成zip压缩文件了。

Java中删除文件及文件夹删除不了的解决方法

然后删除这个bookFile死活删除不了,如果出现这种情况,这个zipFile最后一定要close;

Java中删除文件及文件夹删除不了的解决方法

java.util.zip.ZipFile.close()方法关闭ZIP文件。 关闭此ZIP文件将关闭以前由调用getInputStream()方法返回的所有输入流。这个方法连流都给我们关闭了!就不用我们手动关闭zip文件的流了,最后在调用file.delete()方法就可以删除文件了

感谢各位的阅读!关于“Java中删除文件及文件夹删除不了的解决方法”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI