欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java遍历文件夹&判断是否存在某一类型的文件

程序员文章站 2022-06-04 08:06:17
...

大致思路就是使用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;
        }
    }
    //.......
}
相关标签: java