从SD卡中删除文件夹

时间:2015-03-27 10:46:38

标签: java android file

我的SD卡中有一些文件夹。我想删除关闭活动中的文件夹,即onDestroy()回调。例如:我有folderA,folderB和FolderC。我可以删除folderA和FolderB。这些文件夹包含文件(.zip,.pdf等),但是folderC我无法删除它包含文件夹,子文件夹和文件。以下是我的代码。

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没有删除。我对folderA和folderB使用相同的过程。

由于

1 个答案:

答案 0 :(得分:0)

您可以将此功能用于删除文件夹。您需要传递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();

    }