Java File 利用遞迴得到資料夾下所有檔案
阿新 • • 發佈:2021-01-08
Java File 利用遞迴得到資料夾下所有檔案
File的方法:
解題思路:
1.判斷檔案路徑是否存在,不存在直接結束方法
2.檔案存在,轉成檔案陣列,
3.遍歷陣列,去取檔案命名,用String類的endsWith()方法,判斷檔案字尾是否是.txt
4.是的存入集合,不是的就使用遞迴,呼叫自己的方法,繼續取檔名
(集合設定成全域性靜態屬性:靜態的特點,隨著類的載入而載入,在記憶體中只有一份)
程式碼展示:
//全域性靜態屬性,集合用來儲存所有的檔名
static ArrayList<String> arrs = new ArrayList<>();
public static ArrayList job1(File file){
if(file.exists()) {
//獲取檔案陣列
File[] files = file.listFiles();
//遍歷檔案陣列,獲得檔名
for (File f : files) {
//判斷名字是不是。txt結尾
if (f.getName().endsWith(".txt" )) {
arrs.add(f.getName());
} else {
job1(f);
}
}
return arrs;
}
System.out.println("檔案路徑錯誤");
return null;
}