我无法删除下载中的文件夹。
已使用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文件中已给定的所有权限
为什么尝试catch和boolean只是检查文件是否存在,然后filename.delete():函数将删除对我有用的文件,我不知道你。
我找到了答案。我试图删除包含文件的文件夹。为了删除文件夹,第一个文件夹应该为空。所以我先删除了文件夹中的文件。然后删除该文件夹。现在可以正常工作。
这是我更新的代码
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();
}
}