深度遍历:删除全部文件

来源:互联网 发布:湖广填四川知乎 编辑:程序博客网 时间:2024/05/27 16:40

/*
* 需求:删除当前目录(目录里面内容全部删除)
* 分析:如果单单使用delete不能完成,因为delete不能删除带内容的
* 目录,所以必须使用深度遍历进行删除,该方法思想是从内往外删除。
*/

public class FileTest2 {public static void main(String[] args) {    //1.建立你所需要删除的目录    File file = new File("F:\\demodir");    //2,进行删除方法封装    deleteAll(file);}public static void deleteAll(File file) {    //1,使用listFiles方法获取当前目录下的文件File对象数组    File [] dir = file.listFiles();    //对该数组进行深度遍历    for(File name:dir){        if(name.isDirectory()){            deleteAll(name);//递归思想        }else{            //2,只会删除文件,目录还在            name.delete();        }    }//3,删掉目录,该语句位置比较重要,遍历完就删除目录从内向外外删除    file.delete();}}
0 0