package file_operations;
import java.io.File;
/**
* 递归遍历文件夹
* 递归删除文件夹
* @author 86156
*
*/
public class Domo2 {
public static void main(String[] args) {
//listsdir(new File("f:\\javatest/aaa")); //遍历文件夹
deletedir(new File("f:\\javatest/aaa")); //删除文件和文件夹
}
/**
* 递归遍历文件夹
* @param file 文件夹
*/
private static void listsdir(File file) {
File[] files = file.listFiles();
System.out.println(file.getAbsolutePath());
if (files!=null&&files.length>0) {
for (File file2 : files) {
if(file2.isDirectory()){
listsdir(file2); //递归调用
}else {
System.out.println(file2.getAbsolutePath());
}
}
}
}
/**
* 递归删除文件
* @param dir 文件夹
*/
private 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());
}
}
JAVA 中的递归使用案列
最新推荐文章于 2024-07-04 14:09:44 发布