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 ...
Get C# in a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.