Java递归方式打印磁盘目录结构信息


Java递归方式打印磁盘目录结构信息


利用递归的方式控制台打印出电脑磁盘上指定目录下的所有结构信息,直接上代码

import java.io.File;

/**
 * 打印目录结构信息 递归方式
 */
public class PrintFileTree {


    /**
     * 递归方法打印目录结构信息
     *
     * @param file  文件对象
     * @param level 层次数量
     */
    public static void printFile(File file, int level) {

        // 循环打印结构 - 标号
        for (int i = 0; i < level; i++) {
            System.out.print("-");
        }
        // 打印文件名称
        System.out.println(file.getName());

        // 判断文件对象是否为目录
        if (file.isDirectory()) {

            // 获取文件目录对象下的所有文件信息
            File[] files = file.listFiles();

            // 遍历
            for (File f : files) {

                // 递归调用继续
                printFile(f, level + 1);
            }
        }
    }

    public static void main(String[] args) {

        File file = new File("E:\\AllDownload");
        PrintFileTree.printFile(file, 0);
    }

}