File 的 renameTo(File )移動的時候可能會失敗,失敗原因如下:
1、renameTo()方法的新文件名稱中不能還有任何符號包括(“ ”,“_”,“:”),只要去掉文件名中的符號就可以了。
參考鏈接:https://bbs.csdn.net/topics/370149191
2、File的renameTo(File )使用時,儘量不使用這個方法來移動文件,因爲有可能移動的文件位置所在的磁盤格式不同,從而引發錯誤。
可以考慮使用apache組織的commons-io包裏面的FileUtils#copyFile(File,File)和FileUtils#copyFileToDirectory(File,File)方法實現copy的效果。
至於刪除,可以調用File#deleteOnExit()方法,在虛擬機終止的時候,刪除掉這個目錄或文件。
參考:http://xiaoych.iteye.com/blog/149328
參考鏈接中有實驗和結果。