Name
BinaryReader
Synopsis
This class allows you to read data
from a Stream. When using a
BinaryReader, the data represented by
a Stream is regarded as a
binary format, and bits are merely read from the stream and copied
into the appropriate types. The methods prefixed with
Read() allow you to grab data of a specific type
from the front of the Stream and
advance the current position. The next table shows how many bytes
each of these methods reads in from a stream.
| Method | Bytes read |
|---|---|
Read
| variable |
ReadBoolean
| 1 |
ReadByte
| 1 |
ReadBytes
| variable |
ReadChar
| 2 |
ReadChars
| variable |
ReadDecimal
| 16 |
ReadDouble
| 8 |
ReadInt16
| 2 |
ReadInt32
| 4 |
ReadInt64
| 8 |
ReadSByte
| 1 |
ReadSingle
| 4 |
ReadString
| variable |
ReadUInt16
| 2 |
ReadUInt32
| 4 |
ReadUInt64
| 8 |
ReadString() uses the current
encoding of the BinaryReader
, which can
be set when you call the constructor. Strings are prefixed
with their length.
PeekChar() allows you to
look at the first character of a stream (a
System.Char, which is two bytes) without
advancing the position of the Stream.
Because a binary reader may hold on to resources that should be
freed when not needed, the
BinaryReader must be closed using
Close() or by wrapping it
in a using block (which calls
the protected Dispose() method
to do the cleanup at the end of the using block).
public class BinaryReader : IDisposable { // Public Constructors public method BinaryReader(Stream input); public method BinaryReader(Stream input, System.Text.Encoding encoding); // Public Instance Properties ...