JAVA在刪除文件或文件夾時,在java.io.File類下有個delete的方法,並且可以返回true or false, 用這個方法來刪除單個文件時,很好使,但在刪除文件夾時,如果文件夾下面有文件或者子文件夾時,調用這個方法就會返回false,也就是刪除失敗,這個方法只能刪除空的文件夾,如果這樣的話,就麻煩了,要達到刪除文件夾的目的,就得一層一層的刪除,很顯然,可以使用遞歸,實現如下:(文件或文件夾都好使!!!)(如果在LINUX系統下運行時,可能得有個小地方要改改,為什么改自已想!)
package com.demo;
import java.io.File;
public class Test10 {
public boolean delete(String path){
File file = new File(path);
if(!file.exists()){
return false;
}
if(file.isFile()){
return file.delete();
}
File[] files = file.listFiles();
for (File f : files) {
if(f.isFile()){
if(!f.delete()){
System.out.println(f.getAbsolutePath()+" delete error!");
return false;
}
}else{
if(!this.delete(f.getAbsolutePath())){
return false;
}
}
}
return file.delete();
}
public static void main(String[] args) {
Test10 t = new Test10();
System.out.println(t.delete("c:\\1"));
}
}
