java利用SuffixFileFilter统计目录下特定后缀名文件的数目

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java利用SuffixFileFilter统计目录下特定后缀名文件的数目相关的知识,希望对你有一定的参考价值。

/**
 * 文件处理类
 * @author zhangcd
 * @date 2017年1月3日
 */
public class FileUtil {


    /**
     * 得到所有后缀的数目
     * 
     * @param directory 目录
     * @param suffixFilter 后缀
     * @param pageCount 返回结果集限制
     * @return list 集合
     * @throws ArchiveException 
     */
    public static int getSuffixFilesNum(File dirFile, String suffixFilter) {
        int num = 0;
        try {
            File[] tempDirs = dirFile.listFiles(new SuffixFileFilter(suffixFilter));
            if (tempDirs != null && tempDirs.length > 0) {
                num = tempDirs.length;
            }
        } catch (Exception e) {
            logger.error("获取后缀列表异常", e);
        }
        return num;
    }
    
    static class SuffixFileFilter implements FilenameFilter {
        private String suffix;

        public SuffixFileFilter(String suffix) {
            this.suffix = suffix;
        }

        public boolean accept(File dir, String name) {
            return name.endsWith(suffix);
        }
    }

    
       public static void main(String[] args) {
        int doneNum = 0;
        List<String> pathList = FileUtil.listSubDir("D:/cc");
            for (String path : pathList) {
                // "/contentFiles/系统号/当前日期/splitFiles"目录
                String splitFiles = path + File.separator + "splitfiles";
                // splitFiles下所有目录
                List<String> splitFileList = FileUtil.listSubDir(splitFiles);
                // 遍历splitFiles目录
                for (String splitFile : splitFileList) {
                    doneNum += FileUtil.getSuffixFilesNum(new File(splitFile), ".done");
                }
            }
        System.out.println(doneNum);
    }

}

 

以上是关于java利用SuffixFileFilter统计目录下特定后缀名文件的数目的主要内容,如果未能解决你的问题,请参考以下文章

mysql 统计表中条目数量的几种方法

php中如何获取表单图片总数目?

C++利用opencv实现单目测距

经典案例词频统计十种实现方式

利用Java求出有一串身份证的数字,用分号隔开,提取每个身份证号,统计男性和女?

java统计图表百分比和如何等于百分之百