java调用文件删除方法delete()时无法删除文件(文件流已经关闭依然无法删除)

当尝试使用Java的File.delete()方法删除文件时,如果文件被JVM占用或者文件流未正确关闭,可能会导致删除失败。本文讨论了可能导致文件删除失败的原因,包括文件被其他进程占用、文件夹不为空以及文件流关闭问题,并提供了一种在finally块中正确关闭文件流的实践方法,以确保文件能够被成功删除。
摘要由CSDN通过智能技术生成

jvm占用文件导致文件不能删除,debug过程中尝试手动删除文件会提示“文件已在java platform se binary”中打开。

一般来说 java file.delete失败 有以下几个原因
1.看看是否被别的进程引用,手工删除试试(删除不了就是被别的进程占用)
2.file是文件夹 并且不为空,有别的文件夹或文件,
3.极有可能有可能自己前面没有关闭此文件的流
转载自:https://www.cnblogs.com/stono/p/6736767.html

但是添加了文件流关闭的语句之后依然没有解决我的问题,推测可能是流关闭的方式有问题,才想到应该在finally中关闭流才靠谱,去查书发现书里的写法也不是很好,于是查到了在try中关闭文件文件流的正确姿势。(感谢:https://blog.csdn.net/qq_27093465/article/details/52439754

流在try外面声明,在try里面初始化,然后在finally里面给close,还记得处理异常e,finally里面close的时候也得再次try catch 一下。
   private 
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值