C#流(Stream)概念

流具有如下3种基本操作:

  • 写入:将数据从内存缓冲区传输到外部源;
  • 读取:将数据从外部源传输到内存缓冲区;
  • 查找:重新设置流的当前位置,以便随机读写。但并不是所有的流类型都支持查找,如网络流类没有当前位置的概念,就不支持查找。

Stream是虚拟类,它以及它的派生类都提供了Read和Write方法,可以支持在字节级别上对数据进行读写。Read方法从当前字节流读取字节放至内存缓冲区,Write方法把内存缓冲区的字节写入当前流中。


封装的其他流类

但仅支持字节级别的数据处理会给开发人员带来不便。将定应用程序需要将字符数据写入到流中,则需要先将字符数据转化为字节数组之后才能调用Write方法写入流。因此,除了Stream及其派生类的读写方法之外,.Net框架同样提供了其他多种支持流读写的类:

    • BinaryReader:从Streams读取编码的字符串和基元数据类型;
    • BinaryWriter:向Streams写入编码的字符串和基元数据类型;
    • StreamReader:通过使用Encoding将字符转换为字节,向Streams写入字符;
    • StreamWriter:通过使用Encoding进行字符和字节的转换,可直接从Streams中读取字符;
posted @ 2013-03-14 19:34  IT浪潮之巅  阅读(1144)  评论(0编辑  收藏  举报
   友情链接: 淘宝优惠券