C# 的 BinaryReader
类主要用于读取二进制文件中的数据。它可以处理以下格式的数据:
- 字节(byte):读取一个或多个字节。
- 整数(int):读取一个 32 位有符号整数。
- 无符号整数(uint):读取一个 32 位无符号整数。
- 长整数(long):读取一个 64 位有符号整数。
- 无符号长整数(ulong):读取一个 64 位无符号整数。
- 单精度浮点数(float):读取一个 32 位单精度浮点数。
- 双精度浮点数(double):读取一个 64 位双精度浮点数。
- 字符串(string):读取一个字符串,字符串是以 null 结尾的字节序列。
- 布尔值(bool):读取一个布尔值,表示真或假。
- 短整数(short):读取一个 16 位有符号整数。
- 无符号短整数(ushort):读取一个 16 位无符号整数。
- 字符(char):读取一个 16 位 Unicode 字符。
- 时间(DateTime):读取一个
DateTime
结构。
要使用 BinaryReader
,你需要先创建一个 BinaryReader
对象,传入一个 Stream
对象(如文件流或内存流),然后使用相应的方法来读取数据。例如:
using System; using System.IO; class Program { static void Main() { // 创建一个文件流 using (FileStream fileStream = new FileStream("example.bin", FileMode.Open)) { // 创建一个 BinaryReader 对象 using (BinaryReader binaryReader = new BinaryReader(fileStream)) { // 读取一个整数 int number = binaryReader.ReadInt32(); Console.WriteLine("Read integer: " + number); // 读取一个字符串 string str = binaryReader.ReadString(); Console.WriteLine("Read string: " + str); // 读取一个布尔值 bool flag = binaryReader.ReadBoolean(); Console.WriteLine("Read boolean: " + flag); } } } }
请注意,BinaryReader
只能读取二进制文件中的数据。如果你需要处理其他格式的文件(如文本文件、JSON 文件等),你需要使用其他相应的类(如 StreamReader
、JsonReader
等)。