递归读取某个目录及子目录下的所有文件,获取文件名

递归地读取某个目录及子目录下的所有文件,获取文件名

package org.example;

import java.io.*;
public class FileTest01 {
    public static void main(String[] args) {
        listFile(new File("E:\\demo"), 0);
    }
    //递归读取某个目录及子目录下的所有文件
    private static void listFile(File f, int level) {
        /**
         * 仅提供打印时展示层次感
         * */
        String s = "";
        for (int i = 0; i < level; i++) {
            s += "  ";
        }
        //listFiles: File类的方法,返回一个抽象路径名数组,表示此抽象路径名表示的目录中的文件。
        File[] files = f.listFiles();
        for (int i = 0; i < files.length; i++) {
            /**返回此抽象路径名表示的文件或目录的名称。
             * */
            System.out.println(s + files[i].getName());
            if (files[i].isDirectory()) {
                listFile(files[i], level+1);
            }
        }
    }
}
posted @ 2022-09-23 11:51  辰臣  阅读(13)  评论(0)    收藏  举报  来源