学递归之后做练习题的时候要求递归删除多级文件和文件夹(运行一次),苦苦想了半天,结果出来的结果却如此简单,然后发现最后的结果一样但是过程不一样,传说中的野路子!!~分享了
定义方法如下:
private static void print(File f) {
while (!f.delete()) {
File[] arr = f.listFiles();
for (File f1 : arr) {
print(f1);
}
}
正常思路的方法:
private static void delF(File file) {
File[] f = file.listFiles();
if (f == null) {
return;
}
for (File file2 : f) {
if (file2.isFile()) {
file2.delete();
} else if (file2.isDirectory()) {
delF(file2);
}
}
file.delete();
}
|
|