今天复习了一下IO相关的知识,突然想起如何删除文件夹下的所有文件,就自己写了一下代码。
目录结构
- test
- 1.txt
- 2.xlsx
- 3
- 4.docx
package com.zl.test;
import java.io.File;
/**
* 删除文件夹下的所有文件
* @author zl
* @date 2017.06.14
*/
public class Test {
public static void main(String[] args){
File file=new File("E:/test");//路径
deleteFile(file);
}
private static void deleteFile(File file){
if (file.isFile()){//判断是否为文件,是,则删除
System.out.println(file.getAbsoluteFile());//打印路径
file.delete();
}else{//不为文件,则为文件夹
String[] childFilePath = file.list();//获取文件夹下所有文件相对路径
for (String path:childFilePath){
File childFile= new File(file.getAbsoluteFile()+"/"+path);
deleteFile(childFile);//递归,对每个都进行判断
}
System.out.println(file.getAbsoluteFile());
file.delete();
}
}
}
运行结果:
E:\test\1.txt
E:\test\2.xlsx
E:\test\3\4.docx
E:\test\3
E:\test