如何在Java中删除目录内容?
2022-08-31 10:53:19
枚举目录后,我现在需要删除所有文件。
我用过:
final File[] files = outputFolder.listFiles();
files.delete();
但这并没有删除目录。
枚举目录后,我现在需要删除所有文件。
我用过:
final File[] files = outputFolder.listFiles();
files.delete();
但这并没有删除目录。
您必须为每个文件执行此操作:
public static void deleteFolder(File folder) {
File[] files = folder.listFiles();
if(files!=null) { //some JVMs return null for empty dirs
for(File f: files) {
if(f.isDirectory()) {
deleteFolder(f);
} else {
f.delete();
}
}
}
folder.delete();
}
然后致电
deleteFolder(outputFolder);
要删除包含文件的文件夹,无需循环或递归搜索。您可以直接使用:
FileUtils.deleteDirectory(<File object of directory>);
此函数将删除文件夹及其中的所有文件。