Stream.Flush メソッド


派生クラスによってオーバーライドされた場合は、ストリームに対応するすべてのバッファーをクリアし、バッファー内のデータを基になるデバイスに書き込みます。When overridden in a derived class, clears all buffers for this stream and causes any buffered data to be written to the underlying device.

 abstract void Flush();
public abstract void Flush ();
abstract member Flush : unit -> unit
Public MustOverride Sub Flush ()


I/O エラーが発生します。An I/O error occurs.


Flushバッファーを実装するストリームでオーバーライドします。Override Flush on streams that implement a buffer. このメソッドを使用して、基になるバッファーから宛先に情報を移動するか、バッファーをクリアするか、またはその両方を行います。Use this method to move any information from an underlying buffer to its destination, clear the buffer, or both. オブジェクトの状態によっては、ストリーム内の現在位置を変更することが必要になる場合があります (基になるストリームでシークがサポートされている場合など)。Depending upon the state of the object, you might have to modify the current position within the stream (for example, if the underlying stream supports seeking). 詳細については、CanSeek のトピックを参照してください。For additional information see CanSeek.

書き込みをサポートしていないから派生したクラスで Stream Flush は、は通常、他の型との完全な互換性を確保するために空のメソッドとして実装され Stream ます。これは、読み取り専用ストリームをフラッシュすることが有効であるためです。In a class derived from Stream that doesn't support writing, Flush is typically implemented as an empty method to ensure full compatibility with other Stream types since it's valid to flush a read-only stream.

クラスまたはクラスを使用する場合は、ベースオブジェクトをフラッシュしないでください StreamWriter BinaryWriter StreamWhen using the StreamWriter or BinaryWriter class, do not flush the base Stream object. 代わりに、クラスのまたはメソッドを使用します Flush Close 。これにより、データが最初に基になるストリームにフラッシュされてから、ファイルに書き込まれます。Instead, use the class's Flush or Close method, which makes sure that the data is flushed to the underlying stream first and then written to the file.