java.io.FileNotFoundException: /storage/emulated/0/Documents/log.txt: open failed: EACCES (Permission denied)
时间: 2023-07-06 17:42:07 浏览: 287
“open failed: EACCES (Permission denied)”读取SD卡报错解决办法
这个错误提示是因为你的应用程序没有权限访问文件系统中的该文件。你需要在应用程序的 AndroidManifest.xml 文件中添加以下权限:
```xml
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
```
同时,在代码中,在访问文件之前,需要获取存储权限:
```java
if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[] { Manifest.permission.WRITE_EXTERNAL_STORAGE }, 0);
}
```
此外,还需要注意 Android 10(API 级别 29)及更高版本中的存储访问变更。在这些版本中,应用程序需要使用 Storage Access Framework 或 MediaStore API 访问外部存储。你需要更新你的应用程序以遵循这些变更。
阅读全文