java - 从 SD 卡中删除文件夹

标签 java android file

我的 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/

相关文章:

java - 使用在后台运行的 REST Web 服务的 OSGi 网站

.net - 处理从 html 页面到单独的 .NET 页面的文件上传

java - Java中的File和FileLoader有什么区别?

c++ - 是否可以将二进制文件存储在 exe 中

java - 使用 JPA 进行更新时如何排除实体字段

java - 在 Java 中使用来自非单例的单例时的性能影响?

java - 如何在 Java 中使用自定义类型注解

java - 如何从 OpenStreetMap 离线创建 map 图 block ,在 Android 上显示?

Android:使用 Kotlin,Progressbar 不能为 null

来自数据库的 Android 字符串资源