首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >StreamReader对BinaryReader?

StreamReader对BinaryReader?
EN

Stack Overflow用户
提问于 2012-04-27 15:56:25
回答 1查看 52.3K关注 0票数 46

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

BinaryReader:

代码语言:javascript
复制
   using (FileStream fs = File.Open(@"c:\1.bin",FileMode.Open))
            {
                    byte[] data = new BinaryReader(fs).ReadBytes((int)fs.Length);
                    Encoding.getstring....
            }

StreamReader:

代码语言:javascript
复制
  using (FileStream fs = File.Open(@"c:\1.bin",FileMode.Open))
            {
                using (StreamReader sr = new StreamReader(fs,Encoding.UTF8))
                {
                       var myString=sr.ReadToEnd();
                }
            }

有什么区别,我应该什么时候使用哪一种?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-27 15:59:29

StreamReader和BinaryReader都可以用于从二进制文件中获取数据。

StreamReader可以用来从文本的二进制表示中获取文本数据。

BinaryReader可用于获取任意二进制数据。如果其中的一些二进制数据恰好是文本的表示,那很好--但并不一定是这样。

底线:

如果您的数据的全部是文本数据的简单二进制编码,那么使用StreamReader.

  • If从根本上说,您已经获得了二进制数据,这些数据可能在文本中有一些部分,使用BinaryReader

因此,例如,您不会尝试使用StreamReader读取JPEG文件。

票数 84
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10353913

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档