网上找了半天也没找到一个合适的例子,本人写了一个以供大家参考
该例子虽实现了功能,但本人觉得有点啰嗦,有待改进,
大家有好的例子也可发布一下供参考,谢谢!
package demo;
import java.io.File;
public class DemoFile {
/**
* @param args
*/
//删除文件夹下的所有文件
public static boolean deleteAllFile(String folderFullPath){
boolean ret = false;
File file = new File(folderFullPath);
if(file.exists()){
if(file.isDirectory()){
File[] fileList = file.listFiles();
for (int i = 0; i < fileList.length; i++) {
String filePath = fileList[i].getPath();
deleteAllFile(filePath);
}
}
if(file.isFile()){
file.delete();
}
}
return ret;
}
//删除文件夹下的所有空文件夹,注意必须是空文件夹,该方法可能一次不能全部删除,需在调用时多次执行
public static boolean deleteAllFullFolder(String folderFullPath){
boolean ret = false;
File file = new File(folderFullPath);
if(file.exists()){
File[] fileList=file.listFiles();
if(fileList.length>0){
for(int i=0;i<filelist.length;i++){<br> String filePath = fileList[i].getPath();
deleteAllFullFolder(filePath);
}
}else{
file.delete();
}
}
return ret;
}
public static void main(String[] args) {
//测试,在window测试通过
//删除该目录下的所有文件和文件夹,并删除该目录
String folderFullPath="D://test//test";
deleteAllFile(folderFullPath);
File file=new File(folderFullPath);
if(file.exists()){
while(!file.delete()){
deleteAllFullFolder(folderFullPath);
}
}
file.mkdir();//如不想删除根目录,可以再创建一下
}
}