在我的android应用程序中,我将错误记录在一个txt文件中。但当我尝试创建文件时,我会遇到一个错误Java.io.IOException: open failed: EROS( Read Only file system error)
。我在AndroidManifest.xml
中添加了写入权限,但没有区别。如何修复?
代码
try {
File file =new File("Log.txt");
if(!file.exists()){
file.createNewFile();
}
catch (Exception e)
{
Log.w("tun tun", e.toString());
}
这样做
存储在外部存储器(SDCARD(
try {
File file = new File(Environment.getExternalStorageDirectory() + File.separator + "Log.txt");
if (!file.exists()) {
file.createNewFile();
}
} catch (Exception e) {
Log.w("tun tun", e.toString());
}
存储在内部存储
try {
File file = new File(context.getCacheDir() + File.separator + "Log.txt");
if (!file.exists()) {
file.createNewFile();
}
} catch (Exception e) {
Log.w("tun tun", e.toString());
}
尝试以下代码:-
问题是您没有添加路径。
String filePath = context.getFilesDir().getPath().toString() + "/fileName.txt";
File f = new File(filePath);
或
String FILENAME = "hello_file";
String string = "hello world!";
FileOutputStream fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);
fos.write(string.getBytes());
fos.close();
参考
或
path = Environment.getExternalStorageDirectory();
File file = new File(path, "/" + fname);
数据目录在Android 中没有读/写权限