1. 程式人生 > >java中File的delete()方法刪除檔案失敗的原因

java中File的delete()方法刪除檔案失敗的原因

一般來說 java file.delete失敗 有以下幾個原因 
1.看看是否被別的程序引用,手工刪除試試(刪除不了就是被別的程序佔用)
2.file是資料夾 並且不為空,有別的資料夾或檔案, 
3.極有可能自己前面沒有關閉此檔案的流(我遇到的情況)

這個方法我用來獲取檔案的大小,用到了流類,但是用完了沒有關閉,導致無法刪除檔案:

public String getfilesize(String path,String filename) throws IOException {
  String pathString=path+"\\"+filename;
  f=new File(pathString);
  FileInputStream fis=new FileInputStream(f);
  String time=String.valueOf(((double)fis.available() / 1024));
  fis.close();//當時這裡沒有關閉
  return time.substring(0, time.indexOf(".")+2)+"K";

 }

個人認為:首先用手動方式,即在電腦上找到要刪除的檔案看看能否刪除,如果刪除不掉,(個人遇到的也是,用到該檔案的輸入輸出流沒有關閉。)


仔細檢查一下你程式碼的輸入輸出流,看看能力是否用了但是沒有關閉。