Java Streams での flush() メソッドの使用
この記事では、Java ストリームで実行される flush()
関数とその主な目的について説明します。
Java の flush()
メソッド
この Writer ストリームは、Writer
クラスにある flush()
関数を使用してフラッシュできます。 デスティネーションが別の文字またはバイト ストリームを保持しているかどうかを判断した後、ストリームがさまざまな write()
メソッドからの文字をバッファーに保存した場合、目的のデスティネーションにすぐに書き込む前にデスティネーションをフラッシュしました。
ストリームが文字を保存した場合、宛先はフラッシュされました。 デスティネーションに別の文字ストリームまたはバイト ストリームが含まれている場合、flush()
を 1 回使用するだけで、Writer および出力ストリームの文字列内のすべてのバッファ データをフラッシュできます。
バッファリングの主な目的は、I/O
操作のパフォーマンスを向上させることです。
flush()
メソッドの目的
データをストリームに書き込むとき、データは瞬時に書き込まれるわけではありません。 代わりに、バッファに格納されます。 buffer
からのすべてのデータが書き込まれたことを確認する必要がある場合は、flush()
関数を使用します。
ストリームを閉じる前にすべての書き込みが完了していることを確認する必要があるため、ファイルまたはバッファリングされた writer()
を閉じるときに flush()
関数が呼び出されます。 ただし、stream()
を終了する前にこれらの書き込みを保存する必要がある場合は、flush()
を使用する必要があります。
すべての一時メモリ ロケーションが容量に達したら、flush()
関数を使用します。 これにより、すべてのデータ ストリームが消去され、それらが完全に処理されるようになり、一時的なバッファーの場所にさまざまなデータ ストリーム用のスペースが確保されます。
それを明確に理解するために例を挙げましょう。 まず、文字列変数を作成し、データを入力します。
String s = "Hey, Muhammad Zeeshan Here! Let's Code!";
次に write()
関数を使用して、文字列をストリーム Writer に送信します。
w.write(s);
flush()
関数を使用して、データを即座にストリームに送信できます。
w.flush();
最後に、close()
関数を使用してストリームを終了します。
close();
完全なソース コード:
import java.io.*;
public class Shanii {
public static void main(String[] args) throws Exception {
String s = "Hey, Muhammad Zeeshan Here! Let's Code!";
Writer w = null;
w = new PrintWriter(System.out);
w.write(s);
w.flush();
System.out.println();
w.close();
}
}
出力:
Hey, Muhammad Zeeshan Here! Let's Code!
I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.
LinkedIn