我试图在Android应用中创建.csv文件。应用程序应该创建文件(如果没有),或者替换文件(如果已存在)。我尝试使用FileWriter
,但它没有创建文件并抛出'FileNotFoundException: open failed: EROFS'
例外。
我已经做过一些研究,但我真的找不到它。我在清单文件(<uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE" />
)中拥有该权限,并且app文件夹未在任何其他应用程序中打开。
(我知道有opencsv,但由于这是我唯一需要做的事情,我不认为我真的需要它。)
这是我的代码:
FileWriter writer;
try {
writer = new FileWriter("data.csv");
for(Answer answer: answerList) {
writer.append(answer.getName());
writer.append(',');
writer.append(answer.getTime());
writer.append('\n');
}
writer.flush();
writer.close();
}
catch (Exception e) {
e.printStackTrace();
}
谢谢!
答案 0 :(得分:0)
更改
writer = new FileWriter("data.csv");
到
writer = new FileWriter(getFilesDir()+File.separatorChar+"data.csv");
这将在内部存储中创建文件。
您需要提供要创建文件的位置或已存在位置的完整路径。