您的位置:首页 > 其它

递归删除目录下所有文件

2016-01-09 20:02 197 查看
删除目录下所有文件,这个只能用递归方法进行!!

递归,只有遇到出口才会停止递归,出口逻辑一定要认真!!!

目录下可能有文件或文件夹,文件夹下面还有文件或文件夹,所以使用递归进行便利进行删除!!

直接上代码,解释很详细!!!短短几行代码直接实现,但是需要认真弄清楚里面的逻辑结构!!!

import java.util.*;
import java.io.File;
public class DeleteAll{

public static void main(String[] args)
{
deleteAll(new File("D:\\ceshi"));  //执行
}
//递归删除文件目录下所有文件或文件夹
public static void deleteAll(File file)
{
//递归出口 1.file为文件 2.file为空目录
if(file.isFile()||file.list().length==0)
{
file.delete();  //将此文件或该空目录删除
}
else
{   //获取到file目录下的文件
File[] files = file.listFiles();
// 遍历files,开始递归,直到file为文件或空目录停止递归
for(File f:files){  //增强For循环,下一篇进行详述!!
deleteAll(f);
f.delete();  //删除该目录
}
file.delete();   //删除该文件夹
}
}
}


据说写够10000000行代码就变成大神了!!!

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息