Java编程迭代地删除文件夹及其下的所有文件实例

本文研究的是Java编程迭代地删除文件实例,具体实现代码如下。

实例代码:

public static void main(String[] args) {

String filePath = "c:" + File.separator +"b";

File file = new File(filePath);

if (file.exists()) {

if (file.isFile()) {

deleteFile(filePath);

} else {

deleteDirectory(filePath);

}

} else {

System.err.println("指定的目录或者文件不存在!");

}

}

//删除单个文件或空的文件夹

public static boolean deleteFile(String filePath) {

File file = new File(filePath);

//如果文件路径对应的文件存在,并且是一个文件,则直接删除

if (file.exists() && file.isFile()) {

if (file.delete()) {

System.err.println("文件" + filePath + "删除成功!");

return true;

} else {

System.err.println("文件" + filePath + "删除失败!");

return false;

}

} else {

System.err.println("文件" + filePath + "不存在!");

return false;

}

}

//删除文件夹及里面的文件

public static boolean deleteDirectory (String dir) {

if (!dir.endsWith(File.separator)) {

dir = dir + File.separator;

}

File dirFile = new File(dir);

//如果dir对应的问件不存在,或者不是一个目录,则退出

if (!dirFile.exists() || !dirFile.isDirectory()) {

System.err.println("文件夹" + dir + "不存在!");

return false;

}

boolean flag = true;

//删除问价夹中的所有文件包括子目录

File[] files = dirFile.listFiles();

for (int i = 0; i < files.length; i++) {

//删除子文件

if (files[i].isFile()) {

flag = deleteFile(files[i].getAbsolutePath());

if (!flag) {

break;

}

} else {

deleteDirectory(files[i].getAbsolutePath());

}

}

//删除当前目录

if (dirFile.delete()) {

System.err.println("目录" + dir + "删除成功!");

return true;

} else {

return false;

}

}

总结

以上是 Java编程迭代地删除文件夹及其下的所有文件实例 的全部内容, 来源链接: utcz.com/z/336780.html

回到顶部