undefined

有時候資料夾中會有許多不同的子資料夾,裡面都有需要的檔案,為了快速搜尋或者其他特定的目標,我們就需要將其相關的檔案進行存取。

以下介紹使用遞迴的方式存取特定副檔名 .parse 的檔案。

程式碼如下:

package Tregex;

import java.io.File;
import java.util.ArrayList;

public class test {
	public static void main(String args[]){
		String filePath = "D://projects";
		ArrayList fileName = new ArrayList();
		fileName = readAllFiles(filePath);
	}
	
	public static ArrayList readAllFiles(String filePath){
		ArrayList allFiles = new ArrayList();
		File file = new File(filePath);
		// 辨識是否為資料夾
		if(file.isDirectory()){
			// 如果是資料夾,就把底下所有檔案的檔名路徑記錄起來
			for(String fileName:file.list()){
				// 這時候就是呼叫自己,利用自己的函數來記錄路徑
				allFiles.addAll(readAllFiles(filePath+"\\"+fileName));
			}
		} else { // 如果不是資料夾,代表為一個檔案,紀錄該檔案路徑,且附檔名必須為 .parse
			if(filePath.toString().contains(".parse")){
				allFiles.add(filePath.toString());
				return allFiles;
			} else {
				return allFiles;
			}
		}
		return allFiles;
	}
}

 

arrow
arrow
    全站熱搜

    葛瑞斯肯 發表在 痞客邦 留言(0) 人氣()