阅读量:187
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 等)。