我正在尝试访问documents文件夹中的文件,但始终会引发异常。该路径的正确代码是什么?我正在使用三星SM-G950F Android 8.0.0
int result(int a[], int b[])
{
int *wsk = &c_tab[0];
char choice;
printf("0.Add\n1.Substract");
scanf("%c", &choice);
for (i=0; i<9; i++) {
if (choice== '0')
{
*wsk = a[i] + b[i];
wsk++;
}
else if (choice== '1')
{
*wsk = a[i] - b [i];
wsk++
}
}
return *wsk;
}
java.io.FileNotFoundException:/storage/emulated/0/sdcard/Documents/asd.txt(无此类文件或目录)
Payload Size
java.io.FileNotFoundException:/sdcard/Documents/asd.txt(权限被拒绝)
我这里的权限被拒绝,我的清单文件中有这些权限:
File file = new File(Environment.getExternalStorageDirectory() + "/sdcard/Documents/asd.txt");
答案 0 :(得分:0)
从Android 6.0开始,您必须要求权限https://developer.android.com/guide/topics/permissions/overview。
答案 1 :(得分:0)
File
对象将通过以下方式创建:
File file = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOCUMENTS), "asd.txt");
此外,as Igor points out,您将需要为READ_EXTERNAL_STORAGE
请求运行时权限。