在C#中,BinaryReader
类用于从二进制流中读取数据。要使用 BinaryReader
,首先需要创建一个实例,然后使用其方法来读取不同类型的数据。以下是一个简单的示例,说明如何使用 BinaryReader
处理二进制流:
using System;
using System.IO;
class Program
{
static void Main()
{
// 创建一个文件流,用于读取二进制数据
using (FileStream fileStream = new FileStream("example.bin", FileMode.Open, FileAccess.Read))
{
// 创建一个 BinaryReader 实例,用于读取文件流中的数据
using (BinaryReader binaryReader = new BinaryReader(fileStream))
{
// 读取整数
int integerValue = binaryReader.ReadInt32();
Console.WriteLine("Integer value: " + integerValue);
// 读取浮点数
float floatValue = binaryReader.ReadSingle();
Console.WriteLine("Float value: " + floatValue);
// 读取字符串(假设字符串长度为固定值)
int stringLength = binaryReader.ReadInt32();
byte[] stringBytes = binaryReader.ReadBytes(stringLength);
string stringValue = Encoding.UTF8.GetString(stringBytes);
Console.WriteLine("String value: " + stringValue);
// 读取布尔值
bool boolValue = binaryReader.ReadBoolean();
Console.WriteLine("Boolean value: " + boolValue);
}
}
}
}
在这个示例中,我们首先打开一个名为 example.bin
的文件,并使用 FileStream
创建一个二进制流。然后,我们创建一个 BinaryReader
实例,并使用其方法读取整数、浮点数、字符串和布尔值。注意,在读取字符串之前,我们需要先读取字符串的长度,然后根据长度读取字符串的字节数据。最后,我们将字节数据转换为字符串。
这只是一个简单的示例,BinaryReader
还提供了许多其他方法,可以用于读取其他数据类型和自定义数据结构。要了解更多关于 BinaryReader
的信息,请参阅 官方文档。