BrotliStream.Read 方法

定义

重载

Read(Span<Byte>)

将当前 Brotli 流中的一个字节序列读取到字节范围,并按读取的字节数向前移动 Brotli 流中的位置。

Read(Byte[], Int32, Int32)

将若干解压缩的字节读入指定的字节数组。

Read(Span<Byte>)

Source:
BrotliStream.Decompress.cs
Source:
BrotliStream.Decompress.cs
Source:
BrotliStream.Decompress.cs

将当前 Brotli 流中的一个字节序列读取到字节范围,并按读取的字节数向前移动 Brotli 流中的位置。

public:
 override int Read(Span<System::Byte> buffer);
public override int Read (Span<byte> buffer);
override this.Read : Span<byte> -> int
Public Overrides Function Read (buffer As Span(Of Byte)) As Integer

参数

buffer
Span<Byte>

内存的区域。 当此方法返回时,此区域的内容将替换为从当前源读取的字节。

返回

读入缓冲区中的总字节数。 如果很多字节当前不可用,则这可小于在缓冲区中分配的字节数;如果已到达流结尾,则为零 (0)。

注解

CanRead使用 属性确定当前实例是否支持读取。 System.IO.Compression.BrotliStream.ReadAsync使用 方法从当前流异步读取。

此方法读取的最大值为 “buffer。当前流中的长度的字节数,并将其存储在 中 buffer。 Brotli 流中的当前位置按读取的字节数提前;但是,如果发生异常,Brotli 流中的当前位置保持不变。 此方法将阻止,直到至少一个字节的数据可以读取,如果没有任何数据可用。 仅当流中没有更多数据且预期不会再 ((例如关闭套接字或文件) 末尾)时,“Read”才返回 0。 方法可以自由返回比请求的字节少,即使尚未到达流的末尾。

用于 BinaryReader 读取基元数据类型。

适用于

Read(Byte[], Int32, Int32)

Source:
BrotliStream.Decompress.cs
Source:
BrotliStream.Decompress.cs
Source:
BrotliStream.Decompress.cs

将若干解压缩的字节读入指定的字节数组。

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[]

用于存储解压缩字节的数组。

offset
Int32

buffer 中的字节偏移量,将在此处放置读取的字节。

count
Int32

最多要读取的解压缩字节数。

返回

解压缩到字节数组中的字节数。 如果已到达流的末尾,则返回 0 或已读取的字节数。

例外

buffernull

创建对象时,CompressionMode 值为 Compress,或者此流上已存在活动的异步操作。

offsetcount 小于零。

buffer 长度减去索引起始点小于 count

数据的格式无效。

基础流为 NULL 或已关闭。

适用于