当需要以二进制形式读取文本文件时,需要借助 C# 中的BinaryReader类。BinaryReader 类提供了许多读取不同数据类型的方法,并且可以对不同的编码方式进行解码。下面是读取文本文件的完整攻略:
步骤 1:创建BinaryReader对象
首先需要在代码中创建BinaryReader对象。可以使用FileStream类打开文本文件,并将其作为参数传递给BinaryReader类。
using System.IO;
// 假设文件名为test.txt,将文件以只读方式打开
using (FileStream fs = new FileStream("test.txt", FileMode.Open, FileAccess.Read))
{
using (BinaryReader br = new BinaryReader(fs))
{
// 读取文本文件的相关代码
}
}
步骤 2:从BinaryReader中读取文本文件内容
二进制文件是以字节为单位读取的,因此需要使用BitConverter.ToInt32和BitConverter.ToChar等方法将字节转换为其他数据类型。可以使用Stream类中的方法读取文本文件,再将其转换为字符串。
using System.IO;
// 假设文件名为test.txt,将文件以只读方式打开
using (FileStream fs = new FileStream("test.txt", FileMode.Open, FileAccess.Read))
{
using (BinaryReader br = new BinaryReader(fs))
{
while (br.PeekChar() != -1)
{
byte[] buffer = new byte[1024];
int bytesRead = br.Read(buffer, 0, buffer.Length);
string content = Encoding.UTF8.GetString(buffer, 0, bytesRead);
Console.WriteLine(content);
}
}
}
上述代码将文件test.txt中的内容读入二进制缓冲区,然后以UTF-8编码形式将二进制缓冲区转换为文本字符串,并写入控制台。
另外,下面是一个读取文本文件的简单示例,代码会将文本文件的每一行读取并打印出来:
using System;
using System.IO;
// 假设文件名为test.txt,将文件以只读方式打开
using (FileStream fs = new FileStream("test.txt", FileMode.Open, FileAccess.Read))
{
using (StreamReader sr = new StreamReader(fs))
{
string line;
while ((line = sr.ReadLine()) != null)
{
Console.WriteLine(line);
}
}
}
以上便是C#以二进制读取文本文件的完整攻略,希望能对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:c# 以二进制读取文本文件 - Python技术站