猿教程 Logo

C# 流(Stream)

阿里云服务器,每月低至7.8元,项目演示即建站必备,比腾讯云更便宜,并且不需学生认证,从此链接购买有效:去购买

C#包括以下标准IO(输入/输出)类,以从不同的源(如文件,内存,网络,隔离存储等)读/写。

Stream:System.IO.Stream是一个抽象类,提供了将字节(读,写等)传输到源的标准方法。它就像一个包装类来传输字节。需要从特定源读取/写入字节的类必须实现Stream类。

以下类继承Stream类,以提供从特定源读取/写入字节的功能:

FileStream从/向物理文件读取或写入字节,无论它是.txt,.exe,.jpg还是任何其他文件。 FileStream派生自Stream类。

MemoryStream:MemoryStream读取或写入存储在内存中的字节。

BufferedStream:BufferedStream从其他Streams读取或写入字节,以提高某些I / O操作的性能。

NetworkStream:NetworkStream从网络套接字读取或写入字节。

PipeStream:PipeStream从不同的进程读取或写入字节。

CryptoStream:CryptoStream用于将数据流链接到加密转换。

下图显示了流类的层次结构:



读写器

StreamReader:StreamReader是一个帮助类,用于通过使用编码值将字节转换为字符从流中读取字符。它可以用于从不同的Streams读取字符串(字符),如FileStream,MemoryStream等。

StreamWriter:StreamWriter是一个帮助类,用于通过将字符转换为字节来将字符串写入流。它可以用于将字符串写入不同的Streams,如FileStream,MemoryStream等。

BinaryReader:BinaryReader是一个用于从字节读取原始数据类型的帮助类。

BinaryWriter:BinaryWriter以二进制形式写入原始类型。


上面的图像显示FileStream从物理文件读取字节,然后StreamReader通过将这些字节转换为字符串来读取字符串。同样,StreamWriter接受一个字符串并将其转换为字节并写入FileStream,然后FileStream将字节写入物理文件。所以FileStream处理字节,因为StreamReader和StreamWriter处理字符串。

重点
  1. Stream是一个抽象类,用于传输来自不同源的字节。 它是读取\写入字节到不同源的所有其他类的基类。

  2. FileStream类提供对物理文件的字节读取和写入功能。

  3. 读写器类提供从Stream类(FileStream,MemoryStream等)读取字节的功能,并将字节转换为适当的编码。

  4. StreamReader提供了一个帮助方法,通过将字节转换为字符串从FileStream读取字符串。 StreamWriter提供了一个帮助方法,通过将字符串转换为字节来将字符串写入FileStream。

在下一部分中将了解如何读取/写入文件系统。

阿里云服务器,每月低至7.8元,项目演示即建站必备,比腾讯云更便宜,并且不需学生认证,从此链接购买有效: 去购买


版权声明:本站所有教程均为本站原创或翻译,转载请注明出处,请尊重他人劳动果实。请记住本站地址:www.yuanjiaocheng.net (猿教程) 作者:卿文刚
本文标题: C#环境
本文地址:http://www.yuanjiaocheng.net/CSharp/Csharp-stream.html