要完成这个操作首先要了解以下几个点
- java删文件是可以直接删除,当删除文件夹时,不能删干净只能一层一层的删
- 要了解递归
步骤
- 建立一个File对象,写一个递归方法
- 判断这个文件是不是文件夹,假如是文件的话直接删除,如果不是文件夹则利用递归
代码
import java.io.File;
import java.io.IOException;
public class FileTest {
public static void main(String[] args) throws IOException {
//删除这里面的东西
File f=new File("E:\\aaa");
FileTest.deleteFile(f);
}
public static void deleteFile(File file) {
//通过File类里的方法获取,获取这个文件里的一级文件或文件夹对象
File[] ls = file.listFiles();
for(int i=0;i<ls.length;i++) {
//判断是不是文件,是文件直接删除
if(ls[i].isFile()) {
System.out.println(ls[i].getName()+"文件------被删除");
ls[i].delete();
}else {
//如果不是文件夹,继续调用deleteFile
deleteFile(ls[i]);
}
}
System.out.println(file.getName()+"------文件夹被删除");
}
}
结果如下