流阅读器与二进制阅读器

本文关键字:二进制 | 更新日期: 2023-09-27 18:32:41

StreamReaderBinaryReader都可以用来从二进制文件中获取数据(例如(

二进制阅读器:

   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 文件。