Stream和Reader、Writer对象学习

本文介绍了.NET框架下Stream类及其实现子类的功能与用途,包括FileStream、MemoryStream等,同时还详细探讨了如何利用StreamReader和StreamWriter类进行文本的读取与写入。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. Stream 是所有流的抽象基类。流是字节序列的抽象概念,例如文件、输入/输出设备、内部进程通信管道或者 TCP/IP 套接字。Stream 类及其派生类提供这些不同类型的输入和输出的一般视图,使程序员不必了解操作系统和基础设备的具体细节。

常用的Stream的子类有:

System.IO.FileStream 存储在文件系统的字节流

这个要重点学习。

System.IO.MemoryStream 存储在内存中的字节流

System.IO.BufferedStream为其他流提供缓冲的流

System.Net.Sockets.NetworkStream通过网络设备读写的字节流


  Stream提供了读写流的方法是以字节的形式从流中读取内容。而我们经常会用到从字节流中读取文本或者写入文本,微软提供了StreamReader和StreamWriter类帮我们实现在流上读写字符串的功能。

2. TextReader 表示可读取连续字符系列的读取器。

StreamReaderStringReader 的抽象基类,它们分别从流和字符串读取字符。使用这些派生类可打开一个文本文件以读取指定范围的字符,或基于现有的流创建一个读取器。

2.1  StreamReader 类

实现一个 TextReader,使其以一种特定的编码从字节流中读取字符。

StreamReader 旨在以一种特定的编码输入字符,而 Stream 类用于字节的输入和输出。使用 StreamReader 读取标准文本文件的各行信息。

2.2  StreamWriter 类

实现一个 TextWriter,使其以一种特定的编码向流中写入字符。

StreamWriter 旨在以一种特定的编码输出字符,而从 Stream 派生的类则用于字节的输入和输出。StreamWriter 默认使用 UTF8Encoding 的实例,除非指定了其他编码。

 


3. BinaryReader和BinaryWriter 类

BinaryReader用特定的编码将基元数据类型读作二进制值。

BinaryWriter以二进制形式将基元类型写入流,并支持用特定的编码写入字符串。

参考文献:

http://www.cnblogs.com/yukaizhao/archive/2011/07/28/stream.html文章不错!!

http://msdn.microsoft.com/zh-cn/library/system.io.stream(v=VS.80).aspx

http://msdn.microsoft.com/zh-cn/library/system.io.textreader(v=VS.80).aspx

http://msdn.microsoft.com/zh-cn/library/system.io.streamreader(v=VS.80).aspx

http://msdn.microsoft.com/zh-cn/library/system.io.streamwriter.aspx

 

转载于:https://www.cnblogs.com/yhlx125/archive/2012/05/21/2287250.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值