我正在尝试向外部文本文件写入未接答复。下面的方法存储的响应未被识别到外部文本文件中,但会覆盖以前的内容。我如何阻止它被覆盖?如何在不覆盖Java中的当前内容的情况下写入外部文本文件
//写一个清单方法
public void writeAList(ArrayList<String> list, String filename)
{
if(list != null) {
try (FileWriter writer = new FileWriter(filename)) {
for(String item : list) {
writer.write(item.trim());
writer.write('\n');
}
}
catch(IOException e) {
System.out.println("Problem writing file: " + filename +
" in writeAList");
}
}
else {
System.out.println("Null list passed to writeAList.");
}
}
//我在这个方法
public String generateResponse(ArrayList<String> words)
{
Iterator<String> it = words.iterator();
while(it.hasNext()) {
String word = it.next();
String response = responseMap.get(word);
if(response != null) {
return response;
}
}
//If we get here, none of the words from the input line was recognized
//In this case, a default response is returned
//The words not recognised are stored in "missed.txt"
helper.writeAList(words,"missed.txt");
return pickDefaultResponse();
}
这可能帮助:http://stackoverflow.com/questions/ 1225146/java-filewriter-with-append-mode – Atri