天天看點

Java删除檔案時總是傳回false,删不掉,且無異常

分享知識 傳遞快樂

今天在利用 File 類中的 delete() 方法删除檔案時總是傳回 false 。檢視路徑檔案路徑正确,檔案也存在。測試可以正常,唯獨在項目中那是一個删不掉啊。後來與測試用例仔細比對了一下,發現有個 IO 類在使用,是以得出:在删除檔案是因為沒關閉 IO,導緻檔案無法删除,後來加上 close() 就可以删除檔案了。

總結下可能會出現删不掉檔案的幾種情況:

  • 沒有删除檔案權限
  • 檔案正在使用
  • 多線程操作
  • 打開的檔案流沒有關閉
  • 需要垃圾回收下