2013-08-12 11 views
5

私はテキストファイルとして出力を取得しようとしました。しかし、私はテキストファイルで出力を印刷し、次の入力セットではそれを上書きします。私の出力をすべてテキストファイルの順番で見ることができます。どうすればいいですか?私はどのようにテキストファイルにJava出力を書くことができます

+6

出力をファイルに追加します。ファイルへの書き込みに使用するコードを表示します。 –

+0

あなたのコードを書いておけば、私たちは問題を理解しやすくなります – mmratxs

+1

fileWriterを使用している場合、 'true'、' new FileWriter(filename、true) 'を渡します – sushain97

答えて

4

FileWriterを使用する場合は、FileWriterの第2引数としてtrueを渡して、「追加」モードを有効にします。あなたがFileWriterを使用していると仮定すると、

fout = new FileWriter("filename.txt", true); 

FileWriter usage reference

+0

多くの作業がありがとうございました。しかし、appendモードをオフにするために、FileWriterの第2引数としてfalseを渡すと、 –

1

、あなたはむしろ上書きするよりも、ファイルに追加したいことを示すために、FileWriter(java.io.File, boolean)またはFileWriter(java.lang.String, boolean)コンストラクタの2番目のパラメータとしてtrueを提供することができます。

しかし、あらかじめすべてをStringBuilder/StringBufferに追加して、一度だけ書き込む方が効率的かもしれません。

+0

"append"モードをオフにするFileWriterの2番目の引数としてfalseを渡すと、2番目のパラメータとしてtrueを渡す必要があります。これは上記の問題の正しいコードです。 'fout = new FileWriter(" filename.txt "、true);' –

+0

申し訳ありません。上書きするのではなく、追加する場合は、2番目のパラメータとして 'true'を指定する必要があることを示しました。 –

0

コードなしのマッチングはできませんが、ファイルに書き込むときは、書き込んだ最後の文字の位置を記憶する変数を保持する必要があります。そのため、連続出力の書き込みを開始するたびに、書き込みを開始する場所

+0

これは確かにそれを行う一つの方法ですが、はるかに良い方法ではありません。受け入れられた答えが最善の解決策です。 –

関連する問題