当前位置: 移动技术网 > IT编程>开发语言>Java > java基础 File 递归删除文件夹中所有文件文件夹

java基础 File 递归删除文件夹中所有文件文件夹

2018年03月05日  | 移动技术网IT编程  | 我要评论

扬子鳃蛭,猎艳修真,国家公务员面试时间

File 递归删除文件夹中所有文件文件夹

package com.swift.kuozhan;

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

/*键盘录入一个文件夹路径,删除该路径下的所有文件文件夹,包括自己。
要求:文件夹中包含有子文件夹*/

public class TheLat {

    public static void main(String[] args) {
        File dir = inputDir();
        delete(dir);
        
    }

    private static void delete(File dir) {
        for(File file:dir.listFiles()) {
            if(file.isDirectory()) {
                delete(file);
            }else {
                file.delete();
            }
        }
        dir.delete();
        System.out.println("整个文件夹及其中文件都被删除");
    }

    private static File inputDir() {

        System.out.println("请录入一个目录");
        Scanner scan = new Scanner(System.in);
        String str = scan.nextLine();
        File file = new File(str);
        if (!file.exists()) {
            throw new RuntimeException("垓目录不存在!");
        }
        if (!file.isDirectory()) {
            throw new RuntimeException("输入的不是一个目录");
        }
        
        return file;
    }

}

又写了一遍

package com.swift.kuozhan;

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

/*键盘录入一个文件夹路径,删除该路径下的所有文件夹。
要求:文件夹中包含有子文件夹*/

public class TheLat {

    public static void main(String[] args) {
        File dir = inputDir();
        delete(dir);
        
    }

    private static void delete(File dir) {
        for(File file:dir.listFiles()) {
            if(file.isDirectory()) {
                delete(file);
            }else {
                boolean success=file.delete();
                if(success) {
                    System.out.println("文件删除成功.");
                }else {
                    System.out.println("正在使用,删除失败");
                }
            }
        }
        boolean success=dir.delete();
        if(success) {
            System.out.println("目录中的文件夹及其中文件都被删除");
        }else {
            System.out.println("文件夹正在使用,删除失败");
        }
    }

    private static File inputDir() {

        System.out.println("请录入一个目录");
        Scanner scan = new Scanner(System.in);
        String str = scan.nextLine();
        File file = new File(str);
        if (!file.exists()) {
            throw new RuntimeException("垓目录不存在!");
        }
        if (!file.isDirectory()) {
            throw new RuntimeException("输入的不是一个目录");
        }
        
        return file;
    }

}

找不同

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网