CryptoStream.Read(Byte[], Int32, Int32) 方法

定义

从当前流读取字节序列,并将流中的位置向前移动读取的字节数。

public:
 override int Read(cli::array <System::Byte> ^ buffer, int offset, int count);
public override int Read (byte[] buffer, int offset, int count);
override this.Read : byte[] * int * int -> int
Public Overrides Function Read (buffer As Byte(), offset As Integer, count As Integer) As Integer

参数

buffer
Byte[]

字节数组。 从当前流中读取最多的 count 个字节,并将它们存储在 buffer 中。

offset
Int32

buffer 中的字节偏移量,从该偏移量开始存储从当前流中读取的数据。

count
Int32

要从当前流中最多读取的字节数。

返回

读入缓冲区中的总字节数。 如果当前可用的字节数没有请求的字节数那么多,则总字节数可能小于请求的字节数;如果已到达流的末尾,则为零。

例外

与当前 CryptoStreamMode 对象关联的 CryptoStream 与基础流不匹配。 例如,对只写的基础流使用 Read 时会引发此异常。

offsetcount 小于零。

count 参数和 offset 参数的和比缓冲区的长度长。

注解

从 .NET 6 开始,此方法读取的字节数可能与请求的字节数不一样多。 有关详细信息,请参阅 DeflateStream、GZipStream 和 CryptoStream 中的部分读取和零字节读取

适用于

另请参阅