当前位置:网站首页>8.递归遍历和删除案例

8.递归遍历和删除案例

2022-08-09 09:23:00 过来我的小熊

递归遍历和删除文件夹案例

package com.io.file;

import java.io.File;

/**
 * 递归遍历和删除
 */
public class Demo3 {
    public static void main(String[] args) {
        listDir(new File("E:\\桌面\\aa"));
        deleteDir(new File("E:\\桌面\\aa"));
    }
    // 递归遍历文件夹
    public static void listDir(File dir){
        File[] files = dir.listFiles();
        System.out.println(dir.getAbsolutePath());
        if (files!=null&&files.length>0){
            for (File file : files) {
                if (file.isDirectory()){
                    listDir(file); // 递归
                }else {
                    System.out.println(file.getAbsolutePath());
                }
            }
        }
    }

    // 递归删除文件夹
    public static void deleteDir(File dir){
        File[] files = dir.listFiles();
        if (files!=null && files.length>0){
            for (File file : files) {
                if (file.isDirectory()){
                    deleteDir(file); // 递归
                }else {
                    // 删除里层文件
                    System.out.println(file.getAbsolutePath() + "删除" + file.delete());
                }
            }
        }
        // 删除最外层的文件夹 dir
        System.out.println(dir.getAbsolutePath() + "删除" + dir.delete());
    }
}

原网站

版权声明
本文为[过来我的小熊]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_56121715/article/details/123762531