流阅读器与二进制阅读器
本文关键字:二进制 | 更新日期: 2023-09-27 18:32:41
StreamReader
和BinaryReader
都可以用来从二进制文件中获取数据(例如(
二进制阅读器:
using (FileStream fs = File.Open(@"c:'1.bin",FileMode.Open))
{
byte[] data = new BinaryReader(fs).ReadBytes((int)fs.Length);
Encoding.getstring....
}
流阅读器 :
using (FileStream fs = File.Open(@"c:'1.bin",FileMode.Open))
{
using (StreamReader sr = new StreamReader(fs,Encoding.UTF8))
{
var myString=sr.ReadToEnd();
}
}
有什么区别,我应该什么时候使用哪个?
StreamReader 和 BinaryReader 都可用于从二进制文件中获取数据
好吧,StreamReader
可用于从文本的二进制表示中获取文本数据。
BinaryReader
可用于获取任意二进制数据。如果某些二进制数据恰好是文本的表示形式,那很好 - 但并非必须如此。
底线:
- 如果整个数据是文本数据的简单二进制编码,请使用
StreamReader
。 - 如果您基本上有二进制数据,而文本中可能恰好有某些部分,请使用
BinaryReader
例如,您不会尝试使用 StreamReader
读取 JPEG 文件。