StreamWriter.Close メソッド

定義

現在の StreamWriter オブジェクトと基になるストリームを閉じます。Closes the current StreamWriter object and the underlying stream.

public:
 override void Close();
public override void Close ();
override this.Close : unit -> unit
Public Overrides Sub Close ()

例外

現在のエンコードは、Unicode サロゲート ペアの片方の表示をサポートしていません。The current encoding does not support displaying half of a Unicode surrogate pair.

次のコード例は、メソッドを示して Close います。The following code example demonstrates the Close method.

// close the file by closing the writer
sw->Close();
// close the file by closing the writer
sw.Close();
' Close the file by closing the writer.
Sw.Close()

注釈

このメソッドは、Stream.Close をオーバーライドします。This method overrides Stream.Close.

のこの実装は、 Close Dispose 値を渡すメソッドを呼び出し true ます。This implementation of Close calls the Dispose method passing a true value.

Closeすべてのデータが基になるストリームに正しく書き込まれるようにするには、を呼び出す必要があります。You must call Close to ensure that all data is correctly written out to the underlying stream. への呼び出しに続くと、 Close に対する操作によって StreamWriter 例外が発生する可能性があります。Following a call to Close, any operations on the StreamWriter might raise exceptions. ディスクに十分な空き領域がない場合は、を呼び出す Close と例外が発生します。If there is insufficient space on the disk, calling Close will raise an exception.

またはを明示的に呼び出す場合を除き、ストリームをフラッシュしても、基になるエンコーダーはフラッシュされません Flush CloseFlushing the stream will not flush its underlying encoder unless you explicitly call Flush or Close. AutoFlushをに設定すると、 true バッファーからストリームにデータがフラッシュされますが、エンコーダーの状態はフラッシュされません。Setting AutoFlush to true means that data will be flushed from the buffer to the stream, but the encoder state will not be flushed. これにより、エンコーダーは次の文字ブロックを正しくエンコードできるように、その状態 (部分文字) を保持できます。This allows the encoder to keep its state (partial characters) so that it can encode the next block of characters correctly. このシナリオは、エンコーダーが隣接する文字を受け取ると、特定の文字のみをエンコードできる UTF8 と UTF7 に影響します。This scenario affects UTF8 and UTF7 where certain characters can only be encoded after the encoder receives the adjacent character or characters.

適用対象

こちらもご覧ください