在外部 SD 卡中写入文件时,我收到错误 EACCESS 权限被拒绝。我已经设置了权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
但是当我读取文件时,我可以成功读取它但无法写入文件。我用于在 SD 卡中写入文件的代码是:
String path="mnt/extsd/Test";
try{
File myFile = new File(path, "Hello.txt"); //device.txt
myFile.createNewFile();
FileOutputStream fOut = new FileOutputStream(myFile);
OutputStreamWriter myOutWriter = new OutputStreamWriter(fOut);
myOutWriter.append(txtData.getText());
myOutWriter.close();
fOut.close();
Toast.makeText(getBaseContext(),"Done writing SD "+myFile.getPath(),Toast.LENGTH_SHORT).show();
} catch (Exception e) {
Toast.makeText(getBaseContext(), e.getMessage(),Toast.LENGTH_SHORT).show();
System.out.println("Hello"+e.getMessage());
}
}
外部存储卡的路径是mnt/extsd/
。这就是为什么我无法使用Environment.getExternalStorageDirectory().getAbsolutePath()
给我一条路径的mnt/sdcard
原因,而这条路径是我平板电脑中的内部存储路径。请提出为什么会这样,我该如何解决