递归遍历和递归删除
递归遍历
package file;
import java.io.File;
/*
案例一:递归遍历文件夹
*/
public class Demo02 {
public static void main(String[] args) {
listDir(new File("E:\\aaa"));//已经创建好的文件夹,里面有好几层文件夹
}
public static void listDir(File dir){
File[] files=dir.listFiles();
System.out.println(dir.getAbsolutePath());
if(files!=null&&files.length>0){
for (File file:files) {
if(file.isDirectory()){
listDir(file);//递归
}else{
System.out.println(file.getAbsolutePath());
}
}
}
}
}
递归删除
package file;
import java.io.File;
/*
案例二:递归删除文件夹
*/
public class Demo02 {
public static void main(String[] args) {
deleteDir(new File("E:\\aaa"));//删除aaa文件夹中所有的内容
}
public static void deleteDir(File dir){
File[] files =dir.listFiles();
if(files!=null&&files.length>0){
for (File file: files) {
if(file.isDirectory()) {
deleteDir(file);//递归
}else {
//删除文件
System.out.println(file.getAbsolutePath()+"删除"+file.delete());
}
}
}
System.out.println(dir.getAbsolutePath()+"删除"+dir.delete());
}
}