void Write(ushort value)- Записывает целочисленное значение типа ushort (короткое целое без знака)
void Write (int value)- Записывает целочисленное значение типа int
void Write(uint value)- Записывает целочисленное значение типа uint (целое без знака)
void Write(long value)- Записывает целочисленное значение типа long (длинное целое)
void Write(ulong value)- Записывает целочисленное значение типа ulong (длинное целое без знака)
void Write(float value)- Записывает значение типа float (с плавающей точкой одинарной точности)
void Write(double value)- Записывает значение типа double (с плавающей точкой двойной точности)
void Write(decimal value)- Записывает значение типа decimal (с двумя десятичными разрядами после запятой)
void Write(char ch)- Записывает символ
void Write (char[] buffer)- Записывает массив символов
void Write(string value)Записывает строковое значение типа string, представленное во внутреннем формате с указанием длины строки
Класс BinaryReader
Класс BinaryReaderслужит оболочкой, в которую заключается байтовый поток, управляющий вводом двоичных данных. Ниже приведен наиболее часто употребляемый конструктор этого класса:
BinaryReader(Stream input)
где input обозначает поток, из которого вводятся считываемые данные. Для чтения из входного файла в качестве параметра input может быть указан объект, создаваемый средствами класса FileStream. Если же поток, определяемый параметром input , не был открыт для чтения данных или оказался недоступным по иным причинам, то генерируется исключение ArgumentException. По завершении ввода из потока типа BinaryReaderего нужно закрыть. При этом закрывается и базовый поток.
В классе BinaryReaderопределены методы, предназначенные для чтения данных всех встроенных в C# типов. Некоторые из этих методов перечислены в табл. 14.6. Следует, однако, иметь в виду, что в методе Readstring()считывается символьная строка, хранящаяся во внутреннем формате с указанием ее длины. Все методы данного класса генерируют исключение IOException, если возникает ошибка ввода. Кроме того, могут быть сгенерированы и другие исключения.
Таблица 14.6. Наиболее часто используемые методы, определенные в классе BinaryReader
Метод - Описание
bool ReadBoolean()- Считывает значение логического типа bool
byte ReadByte()- Считывает значение типа byte
sbyte ReadSByte()- Считывает значение типа sbyte
byte[] ReadBytes(int count)- Считывает количество count байтов и возвращает их в виде массива
char ReadChar()- Считывает значение типа char
char[] ReadChars(int count)- Считывает количество count символов и возвращает их в виде массива
decimal ReadDecimal()- Считывает значение типа decimal
double ReadDouble()- Считывает значение типа double
float ReadSingle()- Считывает значение типа float
short Readlnt16()- Считывает значение типа short
int Readlnt32()- Считывает значение типа int
long Readlnt64()- Считывает значение типа long
ushort ReadUIntl6()- Считывает значение типа ushort
uint ReadUInt32()- Считывает значение типа uint
ulong ReadUInt64()- Считывает значение типа ulong
string ReadString() - Считывает значение типа string, представленное во внутреннем двоичном формате с указанием длины строки. Этот метод следует использовать для считывания строки, которая была записана средствами класса BinaryWriter
В классе BinaryWriterопределены также три приведенных ниже варианта метода Read().
При неудачном исходе операции чтения эти методы генерируют исключение IOException. Кроме того, в классе BinaryReaderопределен стандартный метод Close().
Метод - Описание
int Read() - Возвращает целочисленное представление следующего доступного символа из вызывающего потока ввода. При обнаружении конца файла возвращает значение -1
int Read(byte [] buffer, int offset, int count)- Делает попытку прочитать количество count байтов в массив buffer, начиная с элемента buffer[offset ], и возвращает количество успешно считанных байтов
int Read(char[] buffer, int offset, int count)- Делает попытку прочитать количество count символов в массив buffer , начиная с элемента buffer[offset ], и возвращает количество успешно считанных символов
Читать дальше