无法删除属性文件

时间:2011-12-09 10:40:18

标签: java

我必须从指定的路径中删除属性文件。我使用了以下代码:

File f1 = new File("C:\\Equinox\\UIDesign\\root\\root.properties"); 
boolean success=f1.delete();

返回false。

但是成功删除了文本文件而不是属性文件。

2 个答案:

答案 0 :(得分:5)

File.delete()失败的原因有几个:

  • 这是一个目录而非空
  • 您没有删除文件的操作系统权限
  • 该文件仍在某处打开

如果您为该文件打开了FileInput / OutputStream并忘记关闭它,那么最后一个可能是您自己的错误。

答案 1 :(得分:1)

我同意迈克尔的观点,他的回答非常有道理。只需对您的代码发表评论,您应该执行以下操作以捕获所有可能的错误并相应地通知用户:

try{
 File f1 = new File("C:\\Equinox\\UIDesign\\root\\root.properties"); 
 boolean success=f1.delete();
 if(!success){
    // Notify user that the file 
 }
catch(SecurityException ex){
 // No sufficient rights to do this operation
}