System.IO.StreamWriter.Close Method

Closes the current StreamWriter object and the underlying stream.

Syntax

public override void Close ()

Remarks

This method overrides Stream.Close.

This implementation of StreamWriter.Close calls the StreamWriter.Dispose(bool) method passing a true value.

You must call StreamWriter.Close to ensure that all data is correctly written out to the underlying stream. Following a call to StreamWriter.Close, any operations on the System.IO.StreamWriter might raise exceptions. If there is insufficient space on the disk, calling StreamWriter.Close will raise an exception.

Flushing the stream will not flush its underlying encoder unless you explicitly call StreamWriter.Flush or StreamWriter.Close. Setting StreamWriter.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. This scenario affects UTF8 and UTF7 where certain characters can only be encoded after the encoder receives the adjacent character or characters.

Requirements

Namespace: System.IO
Assembly: mscorlib (in mscorlib.dll)
Assembly Versions: 1.0.5000.0, 2.0.0.0, 4.0.0.0