java使用递归删除非空目录

Posted 阿稳是小可爱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java使用递归删除非空目录相关的知识,希望对你有一定的参考价值。

使用递归删除非空目录

目录的创建: file.makdir();

空目录的删除: file.delete();

例一、

package file;

import java.io.File;

public class Filetext {

    public static void main(String[] args) {
        show(new File("D:/999"));
    }
    public static void show(File file) {
        if(file.isDirectory()) {
            File[] f = file.listFiles();
            for(File name : f) {
                if(name.isFile()) {
                   name.delete();
                }show(name);                
            }        
        }file.delete();        
    }
}

例二、

package day05;
import java.io.File;
public class Work02 {   
    public static void main(String[] args) {
        // 使用递归删除非空目录
           deleteFile(new File("c:/abc"));          
    }    
    public static void deleteFile(File file) {
        if(file.isFile()) {
            file.delete();
        }else {
            String[] childFilePaths = file.list();//得到当前的路径
            for(String childFilePath : childFilePaths) {
                File childFile = new File(file.getAbsolutePath() + "\" + childFilePath);//?
                deleteFile(childFile);
            }
            file.delete();
        }
    }
}

 

以上是关于java使用递归删除非空目录的主要内容,如果未能解决你的问题,请参考以下文章

在Java中递归删除目录

php rmdir使用递归函数删除非空目录的方法

php怎么删除目录

Java非递归的方式获取目录中所有文件(包括目录)

Java递归删除目录及目录下的文件

Java递归删除目录及目录下的文件