成功将文件写入外部存储,但无法删除文件夹
Success write files to external storage, but can't delete folder
android 工作室 3.6
在清单中:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
这是我的视图模型:
init {
Debug.d(TAG, "init: call_loadOperationHistory()")
//loadOperationHistory()
val saveImagesDir =
AndroidUtil.getExternalStoragePath(getApplication<Application>().applicationContext)
if (saveImagesDir.exists()) {
val isDelete = saveImagesDir.delete()
Debug.d(
TAG,
"init: isDelete = " + isDelete + ", saveImagesDir_delete = " + saveImagesDir
)
}
}
这里是 util 方法:
public static File getExternalStoragePath(Context context) {
File root = context.getExternalFilesDir(null);
File savedImagePath = new File(root + "/saved_images");
return savedImagePath;
}
我成功将文件写入此目录。但是不能删除这个目录。
方法:
val isDelete = saveImagesDir.delete()
总是return错误
添加后请检查是否相同
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
允许显示
提供读写权限并试试这个:
File dir = new File("root path");
FileUtils.deleteDirectory(dir);
在 gradle 文件中添加此行以安装 Apache
implementation 'org.apache.commons:commons-io:1.3.2'
如果目录包含文件,则无法使用文件 class.
删除它
先把它清空。
android 工作室 3.6
在清单中:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
这是我的视图模型:
init {
Debug.d(TAG, "init: call_loadOperationHistory()")
//loadOperationHistory()
val saveImagesDir =
AndroidUtil.getExternalStoragePath(getApplication<Application>().applicationContext)
if (saveImagesDir.exists()) {
val isDelete = saveImagesDir.delete()
Debug.d(
TAG,
"init: isDelete = " + isDelete + ", saveImagesDir_delete = " + saveImagesDir
)
}
}
这里是 util 方法:
public static File getExternalStoragePath(Context context) {
File root = context.getExternalFilesDir(null);
File savedImagePath = new File(root + "/saved_images");
return savedImagePath;
}
我成功将文件写入此目录。但是不能删除这个目录。
方法:
val isDelete = saveImagesDir.delete()
总是return错误
添加后请检查是否相同
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
允许显示
提供读写权限并试试这个:
File dir = new File("root path");
FileUtils.deleteDirectory(dir);
在 gradle 文件中添加此行以安装 Apache
implementation 'org.apache.commons:commons-io:1.3.2'
如果目录包含文件,则无法使用文件 class.
删除它先把它清空。