递归列出目录文件

import java.io.*;

public class FileList {

    public static void main(String[] args) {
        File f = new File("d:/test");    //通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。 
        System.out.println(f.getName());    //返回由此抽象路径名表示的文件或目录的名称。
        tree(f,1);

    }
    
    private static void tree(File f,int level) {    //定义level表示遍历层次
        String preStr = "  ";    //空格用于分层显示
        for(int i = 0; i < level; i++) {
            preStr += "  ";
        }
        
        File[] childs = f.listFiles();        //返回f的目录中的文件    
        for(int i = 0; i < childs.length; i++) {            
            System.out.println(preStr + childs[i].getName());    //输出目录的名字
            
            if(childs[i].isDirectory()) {    //测试此抽象路径名表示的文件是否为目录。
                tree(childs[i],level+1);
            }
        }
                
    }

}

文件分布:

test下:

a下:

b下:


输出结果:

猜你喜欢

转载自www.cnblogs.com/pangxiaoshuai/p/10818904.html