私のプログラムでは、プログラムのログファイルを作成するために使用されるBufferedWriter
があります。BufferedWriter:閉じられる前にファイルに書き込む
private BufferedWriter logWriter;
logWriter = new BufferedWriter(new FileWriter(logFile));
私は、ログファイルへの追加を続行するには、以下のメソッドを呼び出して、いくつかの異なる時間にいくつかのクラスで
:
public void log(String logTXT)
{
try
{
logWriter.write(logTXT + "\n");
} catch(Exception e)
{
e.printStackTrace();
}
}
このすべてはうまく動作しますが、それがないことを一つのことは、それはdoesnのです私がlogWriter.close();
と呼ぶまで、ファイルに実際に書き込みません。
私が見たいのは、メソッドを呼び出した直後にStringがファイルに追加されることです。とにかくこれを回ることができるのか、それともそれだけで生きなければならないのか、それは大きな問題ではないと考えているからです。
あなたはjavadocsを読んでみましたか? https://docs.oracle.com/javase/7/docs/api/java/io/BufferedWriter.html#flush()おそらく? –
@ライアン:あなたはあなたの答えを得ていることがわかりますが、なぜそれが起きたのかを明確にしたいのであれば、私はあなたにそれを説明しようとしました。 ご確認ください。 –