我的 SD 卡中有一些文件夹。我想在关闭 Activity 中删除文件夹,即在 onDestroy() 回调中。例如:我有folderA、folderB 和FolderC。我可以删除folderA 和FolderB。这些文件夹包含文件(.zip、.pdf 等),但文件夹 C 我无法删除它包含的文件夹、子文件夹和文件。下面是我的代码。
deletUnZipedFiles(File file){
file = new File(MainActivity.root_sd,"/folderC");
if (file.isDirectory()) {
String[] children = file.list();
for (int i=0; i<children.length; i++) {
boolean success = deletUnZipedFiles(new File(file, children[i]));
System.out.println("status of unziped delet"+success);
if (!success) {
return false;
}
}
}
// The directory is now empty so delete it
//return file.delete();
}
为什么folderC没有删除。我对文件夹 A 和文件夹 B 使用相同的过程。
谢谢
最佳答案
您可以使用此功能删除文件夹。您需要传递 File 对象,例如:
File file = new File("C:\\A\\B");
DeleteRecursive(file);
void DeleteRecursive(File fileOrDirectory) {
if (fileOrDirectory.isDirectory())
for (File child : fileOrDirectory.listFiles())
DeleteRecursive(child);
fileOrDirectory.delete();
}
关于java - 从 SD 卡中删除文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29298864/