[Java] 遍历并删除目标文件夹及其中所有文件


遍历并删除目标文件夹及其中所有文件

1. 主要功能

  • 给定文件夹绝对地址,遍历其中所有文件;
  • 提供选择,可以删除指定文件夹及所有包含在内的文件;
  • 提示:使用递归;

2. Java 实现

import java.io.File;
import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        File file = new File("C:\\Users\\80626\\Desktop\\1");
        print(file);
        Scanner sc = new Scanner(System.in);
        System.out.println("是否删除?(1-是;2-否)");
        switch (sc.nextInt()) {
            case 1:
                del(file);
                System.out.println("删除完毕");
            case 2:
                System.exit(0);
        }
    }

    static void print(File file) {
        if (file.isDirectory()) {
            for (File f : file.listFiles()) {
                print(f);
            }
        } else if (file.isFile()) {
            System.out.println(file.getAbsolutePath());
        }
    }

    static void del(File file) {
        if (!file.exists()) {
            return;
        }
        if (file.isDirectory()) {
            for (File f : file.listFiles()) {
                del(f);
                file.delete();
            }
        } else if (file.isFile()) {
            file.delete();
        }
    }
}
/*
输出
C:\Users\80626\Desktop\1\1.txt
C:\Users\80626\Desktop\1\2\2.txt
是否删除?(1-是;2-否)
2
C:\Users\80626\Desktop\1\1.txt
C:\Users\80626\Desktop\1\2\2.txt
是否删除?(1-是;2-否)
1
删除完毕
 */
发布了255 篇原创文章 · 获赞 258 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/Regino/article/details/104997637
今日推荐