遍歷某一文件夾,當文件數過多時,或出現Too many open files
異常,有問題的代碼
/**
* 獲取指定文件大小
*
* @param file
* @return
* @throws Exception
*/
private long getFileSize(File file) throws Exception {
long size = 0;
if (file.exists()) {
FileInputStream fis = null;
fis = new FileInputStream(file);
size = fis.available();
} else {
file.createNewFile();
}
return size;
}
沒問題的代碼
/**
* 獲取指定文件大小
*
* @param file
* @return
* @throws Exception
*/
private long getFileSize(File file) throws Exception {
long size = 0;
if (file.exists()) {
FileInputStream fis = null;
fis = new FileInputStream(file);
size = fis.available();
fis.close();
} else {
file.createNewFile();
}
return size;
}
沒錯就是這句fis.close();
操作完文件記得及時關閉文件流