无法删除Android的“下载文件夹”中的文件夹

问题描述 投票:0回答:2

我无法删除下载中的文件夹。

已使用DownloadManager在Download / SonyLiv文件夹中创建的文件

File sonyLivFolder =new File
 Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS),SplashFileName);

// sonyLivFolder path returns - "/storage/emulated/0/Download/SonyLiv    
            if(sonyLivFolder.exists()){
                try{

                   boolean isFileDeleted= sonyLivFolder.delete();
                   if(isFileDeleted){
                       Log.d("SplashDownloadManager","FIle deleted Successfully");
                   }else{
                       Log.w("SplashDownloadManager","FIle Not Deleted"); // Always return Not deleted

                   }

                }catch(Exception e){
                    e.printStackTrace();
                }
            }

清单.xml文件中已给定的所有权限

android file download android-download-manager
2个回答
0
投票

为什么尝试catch和boolean只是检查文件是否存在,然后filename.delete():函数将删除对我有用的文件,我不知道你。


0
投票

我找到了答案。我试图删除包含文件的文件夹。为了删除文件夹,第一个文件夹应该为空。所以我先删除了文件夹中的文件。然后删除该文件夹。现在可以正常工作。

这是我更新的代码

 File sonyLivFolder =new File
                ( Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS),SplashFileName);

        if(sonyLivFolder.exists()){
            try{


               File [] filesList= sonyLivFolder.listFiles();

               for(int i=0;i<filesList.length;i++){
                   filesList[i].delete();
               }

               boolean isFileDeleted= sonyLivFolder.delete();
               if(isFileDeleted){
                   Log.d("SplashDownloadManager","FIle deleted Successfully");
               }else{
                   Log.w("SplashDownloadManager","FIle Not Deleted");

               }

            }catch(Exception e){
                e.printStackTrace();
            }
        }
© www.soinside.com 2019 - 2024. All rights reserved.