java:File类递归遍历和递归删除

阅读 52

2022-04-06

递归遍历和递归删除

递归遍历

package file;

import java.io.File;

/*
案例一:递归遍历文件夹
 */
public class Demo02 {
    public static void main(String[] args) {
        listDir(new File("E:\\aaa"));//已经创建好的文件夹,里面有好几层文件夹
    }
    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());
                }
            }
        }
    }
}

递归删除

package file;

import java.io.File;
/*
案例二:递归删除文件夹
*/
public class Demo02 {
    public static void main(String[] args) {
      deleteDir(new File("E:\\aaa"));//删除aaa文件夹中所有的内容
    }
    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());
                }
            }
        }
        System.out.println(dir.getAbsolutePath()+"删除"+dir.delete());
    }
}

精彩评论(0)

0 0 举报