外部 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
、このパスはタブレットの内部ストレージ パス用です。なぜこれがそうであるかを提案してくださいnどうすればこれを解決できますか