1. 程式人生 > >Java遍歷資料夾&判斷是否存在某一型別的檔案

Java遍歷資料夾&判斷是否存在某一型別的檔案

大致思路就是使用File.list()來獲取所要遍歷的資料夾的子檔名,然後通過遞迴實現子資料夾的遍歷,最終達到遍歷整個資料夾的目的,並在遍歷過程中通過獲得的檔名字尾來判斷檔案型別。但是因為遞迴,在時間複雜度上會很捉急就是了…
程式碼很簡單

package fileTest;

import java.io.File;

public class FileSearch {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        FileSearch fileSearch=new
FileSearch(); fileSearch.ReadFile("D:\\pic"); } public void ReadFile(String filePath){ File file=new File(filePath); if(!file.isDirectory()){ //file不是資料夾 System.out.println(file.getName()+" is not a folder"); }else{ traversalFile(filePath,"-"
); } } public void traversalFile(String filePath,String str){ File file=new File(filePath); String[] fileList =file.list(); System.out.println(str+file.getName()); for(String fileName:fileList){ String chileFilePath=filePath+"\\"+fileName; File chilefile=new
File(chileFilePath); if(chilefile.isDirectory()){ traversalFile(chileFilePath,str+"-"); }else{ System.out.println(str+"-"+fileName+" "+checkPNG(fileName)); } } } public Boolean checkPNG(String fileName){ //“.”和“|”都是轉義字元,必須得加"\\" String[] str=fileName.split("\\."); String suffix=str[1]; if("png".equals(suffix)){ return true; }else{ return false; } } //....... }