我的应用程序每天都会创建一个新的CSV文件。 现在我想写一些包含一些信息的新行。当我按下按钮时会发生这种情况。 我的问题是,我不知道如何打开现有文件并继续写入最后信息的位置。我做了很多尝试,但我找不到解决方案。
创建文件
File myFile = new File("/sdcard/Protokolle" + date
+ "/Protokoll.csv");
myFile.createNewFile();
FileOutputStream fOut = new FileOutputStream(myFile);
OutputStreamWriter myOutWriter = new OutputStreamWriter(fOut);
myOutWriter.append("Date");
myOutWriter.append(',');
myOutWriter.append(date);
myOutWriter.append('\n');
myOutWriter.append('\n');
myOutWriter.close();
fOut.close();
的onClick
FileWriter fWriter;
try {
File sdCardFile = new File("/sdcard/Protokolle" + date + "/Protokoll.csv");
Log.d("TAG", sdCardFile.getPath());
fWriter = new FileWriter(sdCardFile, true);
fWriter.write("\n");
fWriter.write("Test");
fWriter.write("Test");
fWriter.write("\n");
fWriter.write("test");
fWriter.flush();
fWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
答案 0 :(得分:0)
将您的代码更改为
FileWriter writer = new FileWriter(Protokoll,true);
这允许您追加到现有文件。见Java API doc for FileWriter。如果该文件不存在,则创建该文件,否则将附加内容。