StreamWriter Class
Implements a TextWriter for writing characters to a stream in a particular encoding.
Assembly: mscorlib (in mscorlib.dll)
The StreamWriter type exposes the following members.
| Name | Description | |
|---|---|---|
![]() ![]() ![]() | StreamWriter(Stream) | Initializes a new instance of the StreamWriter class for the specified stream, using UTF-8 encoding and the default buffer size. |
![]() ![]() | StreamWriter(String) | Initializes a new instance of the StreamWriter class for the specified file on the specified path, using the default encoding and buffer size. |
![]() ![]() ![]() | StreamWriter(Stream, Encoding) | Initializes a new instance of the StreamWriter class for the specified stream, using the specified encoding and the default buffer size. |
![]() ![]() | StreamWriter(String, Boolean) | Initializes a new instance of the StreamWriter class for the specified file on the specified path, using the default encoding and buffer size. If the file exists, it can be either overwritten or appended to. If the file does not exist, this constructor creates a new file. |
![]() ![]() ![]() | StreamWriter(Stream, Encoding, Int32) | Initializes a new instance of the StreamWriter class for the specified stream, using the specified encoding and buffer size. |
![]() ![]() | StreamWriter(String, Boolean, Encoding) | Initializes a new instance of the StreamWriter class for the specified file on the specified path, using the specified encoding and default buffer size. If the file exists, it can be either overwritten or appended to. If the file does not exist, this constructor creates a new file. |
![]() ![]() | StreamWriter(String, Boolean, Encoding, Int32) | Initializes a new instance of the StreamWriter class for the specified file on the specified path, using the specified encoding and buffer size. If the file exists, it can be either overwritten or appended to. If the file does not exist, this constructor creates a new file. |
| Name | Description | |
|---|---|---|
![]() ![]() ![]() | AutoFlush | Gets or sets a value indicating whether the StreamWriter will flush its buffer to the underlying stream after every call to StreamWriter::Write. |
![]() ![]() ![]() | BaseStream | Gets the underlying stream that interfaces with a backing store. |
![]() ![]() ![]() | Encoding | Gets the Encoding in which the output is written. (Overrides TextWriter::Encoding.) |
![]() ![]() ![]() | FormatProvider | Gets an object that controls formatting. (Inherited from TextWriter.) |
![]() ![]() ![]() | NewLine | Gets or sets the line terminator string used by the current TextWriter. (Inherited from TextWriter.) |
| Name | Description | |
|---|---|---|
![]() ![]() | Close | Closes the current StreamWriter object and the underlying stream. (Overrides TextWriter::Close().) |
![]() | CreateObjRef | Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object. (Inherited from MarshalByRefObject.) |
![]() ![]() ![]() | Dispose() | Releases all resources used by the TextWriter object. (Inherited from TextWriter.) |
![]() ![]() ![]() | Dispose(Boolean) | Releases the unmanaged resources used by the StreamWriter and optionally releases the managed resources. (Overrides TextWriter::Dispose(Boolean).) |
![]() ![]() ![]() | Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
![]() ![]() ![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() ![]() ![]() | Flush | Clears all buffers for the current writer and causes any buffered data to be written to the underlying stream. (Overrides TextWriter::Flush().) |
![]() ![]() ![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetLifetimeService | Retrieves the current lifetime service object that controls the lifetime policy for this instance. (Inherited from MarshalByRefObject.) |
![]() ![]() ![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | InitializeLifetimeService | Obtains a lifetime service object to control the lifetime policy for this instance. (Inherited from MarshalByRefObject.) |
![]() ![]() ![]() | MemberwiseClone() | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | MemberwiseClone(Boolean) | Creates a shallow copy of the current MarshalByRefObject object. (Inherited from MarshalByRefObject.) |
![]() ![]() ![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
![]() ![]() ![]() | Write(Boolean) | Writes the text representation of a Boolean value to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | Write(Char) | Writes a character to the stream. (Overrides TextWriter::Write(Char).) |
![]() ![]() ![]() | Write(array<Char>) | Writes a character array to the stream. (Overrides TextWriter::Write(array<Char>).) |
![]() ![]() ![]() | Write(Decimal) | Writes the text representation of a decimal value to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | Write(Double) | Writes the text representation of an 8-byte floating-point value to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | Write(Int32) | Writes the text representation of a 4-byte signed integer to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | Write(Int64) | Writes the text representation of an 8-byte signed integer to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | Write(Object) | Writes the text representation of an object to the text stream by calling ToString on that object. (Inherited from TextWriter.) |
![]() ![]() ![]() | Write(Single) | Writes the text representation of a 4-byte floating-point value to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | Write(String) | Writes a string to the stream. (Overrides TextWriter::Write(String).) |
![]() ![]() ![]() | Write(UInt32) | Writes the text representation of a 4-byte unsigned integer to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | Write(UInt64) | Writes the text representation of an 8-byte unsigned integer to the text stream. (Inherited from TextWriter.) |
![]() ![]() | Write(String, Object) | Writes out a formatted string, using the same semantics as String::Format. (Inherited from TextWriter.) |
![]() ![]() ![]() | Write(String, array<Object>) | Writes out a formatted string, using the same semantics as String::Format. (Inherited from TextWriter.) |
![]() ![]() ![]() | Write(array<Char>, Int32, Int32) | Writes a subarray of characters to the stream. (Overrides TextWriter::Write(array<Char>, Int32, Int32).) |
![]() ![]() | Write(String, Object, Object) | Writes out a formatted string, using the same semantics as String::Format. (Inherited from TextWriter.) |
![]() | Write(String, Object, Object, Object) | Writes out a formatted string, using the same semantics as String::Format. (Inherited from TextWriter.) |
![]() ![]() ![]() | WriteLine() | Writes a line terminator to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | WriteLine(Boolean) | Writes the text representation of a Boolean followed by a line terminator to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | WriteLine(Char) | Writes a character followed by a line terminator to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | WriteLine(array<Char>) | Writes an array of characters followed by a line terminator to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | WriteLine(Decimal) | Writes the text representation of a decimal value followed by a line terminator to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | WriteLine(Double) | Writes the text representation of a 8-byte floating-point value followed by a line terminator to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | WriteLine(Int32) | Writes the text representation of a 4-byte signed integer followed by a line terminator to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | WriteLine(Int64) | Writes the text representation of an 8-byte signed integer followed by a line terminator to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | WriteLine(Object) | Writes the text representation of an object by calling ToString on this object, followed by a line terminator to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | WriteLine(Single) | Writes the text representation of a 4-byte floating-point value followed by a line terminator to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | WriteLine(String) | Writes a string followed by a line terminator to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | WriteLine(UInt32) | Writes the text representation of a 4-byte unsigned integer followed by a line terminator to the text stream. (Inherited from TextWriter.) |
![]() ![]() ![]() | WriteLine(UInt64) | Writes the text representation of an 8-byte unsigned integer followed by a line terminator to the text stream. (Inherited from TextWriter.) |
![]() ![]() | WriteLine(String, Object) | Writes out a formatted string and a new line, using the same semantics as Format. (Inherited from TextWriter.) |
![]() ![]() ![]() | WriteLine(String, array<Object>) | Writes out a formatted string and a new line, using the same semantics as Format. (Inherited from TextWriter.) |
![]() ![]() ![]() | WriteLine(array<Char>, Int32, Int32) | Writes a subarray of characters followed by a line terminator to the text stream. (Inherited from TextWriter.) |
![]() ![]() | WriteLine(String, Object, Object) | Writes out a formatted string and a new line, using the same semantics as Format. (Inherited from TextWriter.) |
![]() | WriteLine(String, Object, Object, Object) | Writes out a formatted string and a new line, using the same semantics as Format. (Inherited from TextWriter.) |
| Name | Description | |
|---|---|---|
![]() ![]() ![]() | CoreNewLine | Stores the new line characters used for this TextWriter. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | Null | Provides a StreamWriter with no backing store that can be written to, but not read from. |
StreamWriter is designed for character output in a particular encoding, whereas classes derived from Stream are designed for byte input and output.
StreamWriter defaults to using an instance of UTF8Encoding unless specified otherwise. This instance of UTF8Encoding is constructed without a byte order mark (BOM), so its GetPreamble method returns an empty byte array. To create a StreamWriter using UTF-8 encoding and a BOM, consider using a constructor that specifies encoding, such as StreamWriter(String, Boolean, Encoding).
By default, a StreamWriter is not thread safe. See TextWriter::Synchronized for a thread-safe wrapper.
For a list of common I/O tasks, see Common I/O Tasks.
The following example shows how to use a StreamWriter object to write a file that lists the directories on the C drive, and then uses a StreamReader object to read and display each directory name. A good practice is to use these objects in a using statement so that the unmanaged resources are correctly disposed. The using statement automatically calls Dispose on the object when the code that is using it has completed.
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.







