BrotliStream.Read Método

Definição

Sobrecargas

Read(Span<Byte>)

Lê uma sequência de bytes do fluxo Brotli atual em um intervalo de bytes e avança a posição no fluxo Brotli até o número de bytes lidos.

Read(Byte[], Int32, Int32)

Lê um número de bytes descompactados na matriz de bytes especificada.

Read(Span<Byte>)

Lê uma sequência de bytes do fluxo Brotli atual em um intervalo de bytes e avança a posição no fluxo Brotli até o número de bytes lidos.

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

Parâmetros

buffer
Span<Byte>

Uma região da memória. Quando este método retorna, o conteúdo desta região é substituído pelos bytes lidos da fonte atual.

Retornos

Int32

O número total de bytes lidos do buffer. Isso poderá ser menor que o número de bytes alocados no buffer se esses muitos bytes não estiverem disponíveis no momento, ou zero (0), se o final do fluxo tiver sido atingido.

Comentários

Use a CanRead propriedade para determinar se a instância atual dá suporte à leitura. Use o System.IO.Compression.BrotliStream.ReadAsync método para ler de forma assíncrona do fluxo atual.

Esse método lê um máximo de `buffer.Length` bytes do fluxo atual e os armazena em buffer. A posição atual no fluxo Brotli é avançada pelo número de bytes lidos; no entanto, se ocorrer uma exceção, a posição atual dentro do fluxo Brotli permanecerá inalterada. Esse método será bloqueado até que pelo menos um byte de dados possa ser lido, caso nenhum dado esteja disponível. `Read` retorna 0 somente quando não há mais dados no fluxo e não é mais esperado (como um soquete fechado ou fim do arquivo). O método é livre para retornar menos bytes do que o solicitado, mesmo que o final do fluxo não tenha sido atingido.

Use BinaryReader para ler tipos de dados primitivos.

Aplica-se a

Read(Byte[], Int32, Int32)

Lê um número de bytes descompactados na matriz de bytes especificada.

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

Parâmetros

buffer
Byte[]

A matriz usada para armazenar os bytes descompactados.

offset
Int32

O deslocamento de bytes no buffer no qual os bytes lidos serão colocados.

count
Int32

O número máximo de bytes descompactados a serem lidos.

Retornos

Int32

O número de bytes que foram descompactados na matriz de bytes. Se o fim do fluxo tiver sido atingido, será retornado zero ou o número de bytes lidos.

Exceções

buffer é null.

O valor CompressionMode era Compress quando o objeto foi criado, ou já existe uma operação assíncrona ativa nesse fluxo.

offset ou count é menor que zero.

O tamanho de buffer menos o ponto inicial do índice é menor que count.

Os dados estão em um formato inválido.

O fluxo subjacente é nulo ou está fechado.

Aplica-se a