遞迴查詢指定目錄下的指定檔案路徑
自己寫了一個簡單的小方法,通過遞迴的方式找到指定目錄下,想要的檔案,包括目錄下和子目錄下的所有檔案。
package research;import java.io.File;import java.util.ArrayList;import java.util.List;/** * @author 關世傑 * @since 2016.9.28 * */public class ResearchFile {/**根據檔案名稱和上級目錄路徑,尋找指定檔案的絕對路徑 * @param fileName * @param fileSaveRootPath * @return 檔案絕對路徑 * @throws BusinessException * @author Guan */public String findFilePath(String fileName, String fileSaveRootPath) {List<String> pathList = new ArrayList<String>();researchfile(new File(fileSaveRootPath),fileName,pathList);String path = null;if(pathList.size()>=1)path = pathList.get(0);return path;}/**根據檔案名稱和上級目錄,尋找所有該檔案的絕對路徑 * @param file * @param fileName * @param pathList * @author Guan */public static void researchfile(File file,String fileName,List<String> pathList) { if (file.isDirectory()) { File[] filearry = file.listFiles(); for (File f : filearry) { researchfile(f,fileName,pathList); } }else{ if(file.getName().equals(fileName)){ pathList.add(file.getAbsolutePath()); } } } }