我有一段代码应该在文件中写入行.. - 如果文件不存在,它应该使用该名称创建新文件。 - 如果文件存在,它应该只写新行...
它似乎总是创建新文件,我不知道如何避免它...... 这是我的代码...
如果文件已经存在,如何使其仅写入新行?
谢谢您的时间...
if (isANumber(value) == true) {
String valResult = "validation_result=VALID";
BufferedWriter writer = null;
writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("ValidationResults.txt")));
System.out.println("Writing in TEXT file: " + "type=" + key + ";value=" + value + ";" + valResult);
writer.newLine();
writer.write("\ntype=" + key + ";value=" + value + valResult + "\n");
writer.flush();
writer.close();
} else {
valResult = "validation_result=INVALID";
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("ValidationResults.txt")));
System.out.println("Writing in TEXT file: " + "type=" + key + ";value=" + value + ";" + valResult);
writer.newLine();
writer.write("\ntype=" + key + ";value=" + value + ";" + valResult + "\n");
writer.flush();
writer.close();
}
最佳答案
使用 FileWriter。那应该可以解决你的问题。 True 参数表示下一行将追加到现有文件中。如果你使用 false 相反,该文件将被覆盖。
new BufferedWriter(new FileWriter("file.txt", true));
关于java - 写入已存在的文件 - 但我有一个问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17467973/