2016-10-19 3 views
0

私は現在、シンプルなAI(Simsimi)プログラムを作成しています。プログラムに私のフレーズに返すべきことを教えるので、私が "話す"ときに、私が言っていることがすでにプログラムに "教えられている"と答えるでしょう。しかし、私はまた、プログラムが既に学んだ回答のリストを保存し、最後の入力だけが保存されている必要があります。私はどういう意味ですか?プログラムがフレーズHello,Good morning、およびHave a good day!に返信するように教えられたとしましょう。BufferedWriterは最後の入力のみをテキストファイルに保存します

これら3つのファイルをすべてresponse.txtというテキストファイルに保存する必要があります。しかし、入力の順番が同じであれば、ファイルにはHave a good day!しか保存できません。ここに私のコード:

System.out.println("\nWhat should I reply to that?\n"); 
answer = simsimiInput.nextLine(); 
try { 
     writer = new BufferedWriter(new FileWriter("response.txt")); 
     writer.write(answer); 
     writer.close(); 

} catch (FileNotFoundException e){} 

私は助けていただければ幸いです!

+0

あなたは[MCVE](http://stackoverflow.com/help/mcve)を作成してもらえますか?ハードコードされた値を 'answer'に代入すればどうなりますか? –

答えて

5

tryのブロックを呼び出すたびにファイルを上書きしています。

FileWriterにファイルを追加する必要があります。

new FileWriter(String fileName, boolean append); 

すなわち

new FileWriter("response.txt", true); 
+0

ありがとう、これはトリックでした! – Paradigm

関連する問題