问题概述
fileutils.deletequietly(new file("e://test//1.txt"));删除文件不生效,也不报错。
常见原因如下
1、文件是存在的,但还是无法删除文件。
2、与权限无关,设置权限后还是无法删除。
3、文件被占用,造成无法删除,解除占用即可。
使用及原因分析
导入包,fileutils.deletequietly需要使用org.apache.commons.io包支持。
<dependency>
<groupid>commons-io</groupid>
<artifactid>commons-io</artifactid>
<version>2.4</version>
</dependency>删除无效还有一种常备忽略的因素就是中文乱码:如下情况
从图中可以看出,中文展示为乱码,但是输出乱码了。

这种情况就会造成,fileutils.deletequietly如果传入的路径包括中文,就是造成因乱码路径失效。
解决办法
在setting中设置工程的编码集,错误的编码集如下:
从图中可以看出,出现了一下project encoding参数为gbk。

将gbk修改成utf-8保存即可解决这个问题。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论