BinaryWriter Class
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Writes primitive types in binary to a stream and supports writing strings in a specific encoding.
Assembly: mscorlib (in mscorlib.dll)
The BinaryWriter type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | BinaryWriter() | Initializes a new instance of the BinaryWriter class that writes to a stream. |
![]() | BinaryWriter(Stream) | Initializes a new instance of the BinaryWriter class based on the supplied stream and using UTF-8 as the encoding for strings. |
![]() | BinaryWriter(Stream, Encoding) | Initializes a new instance of the BinaryWriter class based on the supplied stream and a specific character encoding. |
![]() | BinaryWriter(Stream, Encoding, Boolean) | Initializes a new instance of the BinaryWriter class based on the supplied stream, a specific character encoding, and a value that specifies whether to leave the stream open. |
| Name | Description | |
|---|---|---|
![]() | Close | Closes the current BinaryWriter and the underlying stream. |
![]() | Dispose() | Releases the resources used by the current instance of the BinaryWriter class. |
![]() | Dispose(Boolean) | Called by the Dispose method and finalizer to release the managed and unmanaged resources used by the current instance of the BinaryWriter class. |
![]() | 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 the Object 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 device. |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | Seek | Sets the position within the current stream. |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
![]() | Write(Boolean) | Writes a one-byte Boolean value to the current stream, with 0 representing false and 1 representing true. |
![]() | Write(Byte) | Writes an unsigned byte to the current stream and advances the stream position by one byte. |
![]() | Write(array<Byte>) | Writes a byte array to the underlying stream. |
![]() | Write(Char) | Writes a Unicode character to the current stream and advances the current position of the stream in accordance with the Encoding used and the specific characters being written to the stream. |
![]() | Write(array<Char>) | Writes a character array to the current stream and advances the current position of the stream in accordance with the Encoding used and the specific characters being written to the stream. |
![]() | Write(Decimal) | Writes a decimal value to the current stream and advances the stream position by sixteen bytes. |
![]() | Write(Double) | Writes an eight-byte floating-point value to the current stream and advances the stream position by eight bytes. |
![]() | Write(Int16) | Writes a two-byte signed integer to the current stream and advances the stream position by two bytes. |
![]() | Write(Int32) | Writes a four-byte signed integer to the current stream and advances the stream position by four bytes. |
![]() | Write(Int64) | Writes an eight-byte unsigned integer to the current stream and advances the stream position by eight bytes. |
![]() | Write(SByte) | Writes a signed byte to the current stream and advances the stream position by one byte. |
![]() | Write(Single) | Writes a four-byte floating-point value to the current stream and advances the stream position by four bytes. |
![]() | Write(String) | Writes a length-prefixed string to this stream in the current encoding of the BinaryWriter, and advances the current position of the stream in accordance with the encoding used and the specific characters being written to the stream. |
![]() | Write(UInt16) | Writes a two-byte unsigned integer to the current stream and advances the stream position by two bytes. |
![]() | Write(UInt32) | Writes a four-byte unsigned integer to the current stream and advances the stream position by four bytes. |
![]() | Write(UInt64) | Writes an eight-byte unsigned integer to the current stream and advances the stream position by eight bytes. |
![]() | Write(array<Byte>, Int32, Int32) | Writes a region of a byte array to the current stream. |
![]() | Write(array<Char>, Int32, Int32) | Writes a section of a character array to the current stream, and advances the current position of the stream in accordance with the Encoding used and perhaps the specific characters being written to the stream. |
![]() | Write7BitEncodedInt | Writes a 32-bit integer in a compressed format. |
The BinaryWriter class provides methods that simplify writing primitive data types to a stream. For example, you can use the Write method to write a Boolean value to the stream as a one-byte value. The class includes write methods that support different data types.
When you create a new instance of the BinaryWriter class, you provide the stream to write to, and optionally specify the type of encoding and whether to leave the stream open after disposing the BinaryWriter object. If you do not specify an encoding type, UTF-8 is used.
A derived class can override the methods of this class to give unique character encodings.





