2016-08-03 146 views
3

为什么文件重命名失败?文件重命名失败

我的操作系统是Windows 7,文件夹中存在文件夹C:/test/dfhsdfhs

我的代码:

String path = "C:/test/dfhsdfhs/test2.txt"; 

boolean hasDeleteFolder = true; 

File delFile = new File(path); 
if (delFile.exists()) { 

    if (hasDeleteFolder == true) { 

     Date dateTimeNow = new Date(); 
     String _dateTimeNowStr = dateTimeNow.toString(); 
     _dateTimeNowStr = _dateTimeNowStr.replace(" ", "_"); 
     File timeStampFile = new File (delFile.getAbsolutePath() + "_" + _dateTimeNowStr + "." + FilenameUtils.getExtension(delFile.getName())); 

     if (delFile.renameTo(timeStampFile)) { 

      System.out.println("renamed"); 
      } else { 
      System.out.println("Error"); 
      } 
    } 
} 
+2

“失败”是什么意思?你有错误还是什么? – Blobonat

回答

6

它失败,因为你时刻字符串包含:字符,这是不允许的windows操作系统。替换它们,它会起作用。

_dateTimeNowStr = _dateTimeNowStr.replace(":", "_"); 
+0

非常感谢! – IlyaGutnikov