删除文件夹包括以下几种情况:
文件夹里的文件,文件夹里面的子文件夹(有文件),文件夹里面的子文件夹(空文件夹)。所以程序要针对这三种情况写。
import java.io.File;
public class Test { public static voidmain(String args[]) {
Test t = new Test();
delFolder("c:/bb");
System.out.println("deleted");
}
// 删除文件夹
// param folderPath 文件夹完整绝对路径
public static voiddelFolder(String folderPath) {
try { delAllFile(folderPath);
// 删除完里面所有内容
String filePath = folderPath;filePath = filePath.toString();
java.io.File myFilePath = newjava.io.File(filePath);
myFilePath.delete();
// 删除空文件夹
} catch (Exception e)
{
e.printStackTrace();
} }
// 删除指定文件夹下所有文件
// param path 文件夹完整绝对路径
public static booleandelAllFile(String path) {
boolean flag = false; File file =new File(path);
if (!file.exists()) {
return flag;
} if (!file.isDirectory()) {
return flag;
}
String[] tempList = file.list();
File temp = null;
for (int i = 0; i <tempList.length; i++) {
if (path.endsWith(File.separator)) {
temp = new File(path +tempList[i]);
} else { temp = new File(path +File.separator + tempList[i]);
} if (temp.isFile()) {
temp.delete();
} if (temp.isDirectory()) {
delAllFile(path + "/" +tempList[i]);
// 先删除文件夹里面的文件 delFolder(path + "/" + tempList[i]);
// 再删除空文件夹
flag = true;
}
}
return flag;
}
}
// 这应该全了