java程序统计某个目录的文件的个数

java统计某个文件夹下面的.txt文件的个数(递归)

java怎么才能统计某个文件夹下面的指定类型的文件个数,我们可以通过 java 的 File 类加上递归来实现遍历操作!

想到删除指定类型的文件、或者是移动指定类型的文件,都是差不多的,只需要调用不同方法就可以~

import java.io.File;	//先导包

public class Work04 {
    static int count = 0;	// 初始化统计变量
    
    public static void main(String[] args) {
        File file = new File("E:\Java");	// 需要查找的文件目录
        System.out.println(getTxtFilesCount(file)); //调用方法
    }
    
    
    /*
    * 方法名:getTxtFilesCount
    * 作用:统计.txt文件个数
    */
    public static int getTxtFilesCount(File srcFile){
        // 判断传入的文件是不是为空
        if (srcFile == null) {
            throw new NullPointerException();
        }
        // 把所有目录、文件放入数组
        File[] files = srcFile.listFiles();
        // 遍历数组每一个元素
        for (File f : files) {
            // 判断元素是不是文件夹,是文件夹就重复调用此方法(递归)
            if (f.isDirectory()) {
                getTxtFilesCount(f);
            }else {
                // 判断文件是不是以.txt结尾的文件,并且count++(注意:文件要显示扩展名)
                if (f.getName().endsWith(".txt")) {
                    count++;
                }
            }
        }
        // 返回.txt文件个数
        return count;
    }
}

java 的 File 类常用的一些方法

    public boolean createNewFile()  //若文件不存在则创建新文件    

    public boolean mkdir()  // 创建目录 make Directory

    public boolean delete() // 删除文件及空目录

    public boolean renameTo(File test) // 重命名为 test


    public boolean isFile()  // 是否文件
    public boolean isDirectory()  // 是否目录
    public boolean canRead()  // 是否可读
    public boolean canWrite()  // 是否可写
    public boolean exists()  // 是否存在
    public boolean isHidden()  // 是否隐藏
    public long length()  // 长度
    public String getAbsolutePath()  // 绝对路径
    public String getPath()  // 定义的路径
    public String getName()  // file名字
    public long lastModified()  // 最后一次修改时间


    public String[] list()  // 返回file下的文件和目录名称(字符串)

    public File[] listFiles()  // 返回file下的文件和目录(文件)上面我用的

原文地址:https://www.cnblogs.com/zhiwenxi/p/11386494.html