Utf8JsonReader Estrutura

Definição

Fornece uma API de alto desempenho para acesso apenas avançado, somente leitura, a texto JSON codificado em UTF-8.

public value class Utf8JsonReader
public ref struct Utf8JsonReader
type Utf8JsonReader = struct
Public Structure Utf8JsonReader
Herança
Utf8JsonReader

Observações

Utf8JsonReader processa o texto sequencialmente sem cache e, por defeito, segue estritamente o JSON RFC.

Quando Utf8JsonReader encontra JSON inválido, apresenta uma JsonException informação básica de erro como número da linha e posição do byte na linha.

Como este tipo é uma ref struct, não suporta diretamente assíncrono. No entanto, oferece suporte para a reentrância para ler dados incompletos e continuar a ler quando mais dados são apresentados.

Para poder definir a profundidade máxima durante a leitura ou permitir saltar comentários, cria uma instância de JsonReaderOptions e passa-a ao leitor.

Para mais informações, consulte Use Utf8JsonReader.

Construtores

Name Description
Utf8JsonReader(ReadOnlySequence<Byte>, Boolean, JsonReaderState)

Inicializa uma nova instância da Utf8JsonReader estrutura que processa uma sequência de texto codificado em UTF-8 em leitura e indica se a entrada contém todo o texto a processar.

Utf8JsonReader(ReadOnlySequence<Byte>, JsonReaderOptions)

Inicializa uma nova instância da Utf8JsonReader estrutura que processa uma sequência de apenas leitura de texto codificado em UTF-8 usando as opções especificadas.

Utf8JsonReader(ReadOnlySpan<Byte>, Boolean, JsonReaderState)

Inicializa uma nova instância da Utf8JsonReader estrutura que processa um intervalo de apenas leitura de texto codificado em UTF-8 e indica se a entrada contém todo o texto a processar.

Utf8JsonReader(ReadOnlySpan<Byte>, JsonReaderOptions)

Inicializa uma nova instância da Utf8JsonReader estrutura que processa um espaço de apenas leitura de texto codificado em UTF-8 usando as opções especificadas.

Propriedades

Name Description
BytesConsumed

Obtém o número total de bytes consumidos até agora por esta instância do Utf8JsonReader.

CurrentDepth

Obtém a profundidade do token atual.

CurrentState

Faz passar o estado atual Utf8JsonReader para um Utf8JsonReader construtor com mais dados.

HasValueSequence

Obtém um valor que indica qual Value a propriedade a usar para obter o valor do token.

IsFinalBlock

Obtém um valor que indica se todos os dados JSON foram fornecidos ou se há mais dados por vir.

Position

Recebe a corrente SequencePosition dentro do byte> ReadOnlySequence<codificado em UTF-8 fornecido ou um padrão SequencePosition se a Utf8JsonReader estrutura foi construída com um byte> ReadOnlySpan<.

TokenStartIndex

Obtém o índice onde começa o último token JSON processado (dentro do texto de entrada codificado em UTF-8), saltando qualquer espaço em branco.

TokenType

Obtém o tipo do último token JSON processado no texto JSON codificado em UTF-8.

ValueIsEscaped

Obtém um valor que indica se a corrente ValueSpan ou ValueSequence as propriedades contêm sequências de escape conforme a secção 7 do RFC 8259, e por isso requerem ser des-escapadas antes de serem consumidas.

ValueSequence

Recebe o valor bruto do último token processado como uma fatia de byte> ReadOnlySequence<da carga útil de entrada, apenas se o token estiver contido em múltiplos segmentos.

ValueSpan

Recebe o valor bruto do último token processado como uma fatia de byte ReadOnlySpan<da carga útil de entrada, se o token caber num único segmento ou se o leitor foi construído com uma carga útil JSON contida num byte> ReadOnlySpan<.>

Métodos

Name Description
CopyString(Span<Byte>)

Copia o valor atual do token JSON da fonte, sem escape, como bytes UTF-8 para um buffer.

CopyString(Span<Char>)

Copia o valor atual do token JSON da origem, sem escape, como caracteres UTF-16 para um buffer.

GetBoolean()

Lê o próximo valor do token JSON da fonte como um Boolean.

GetByte()

Analisa o valor atual do token JSON da fonte como um Byte.

GetBytesFromBase64()

Analisa o valor atual do token JSON da fonte e descodifica a cadeia JSON codificada em Base64 como um array de bytes.

GetComment()

Analisa o valor atual do token JSON da fonte como comentário e transcodifica-o como um String.

GetDateTime()

Lê o próximo valor do token JSON da fonte e analisa-o para um DateTime.

GetDateTimeOffset()

Lê o próximo valor do token JSON da fonte e analisa-o para um DateTimeOffset.

GetDecimal()

Lê o próximo valor do token JSON da fonte e analisa-o para um Decimal.

GetDouble()

Lê o próximo valor do token JSON da fonte e analisa-o para um Double.

GetGuid()

Lê o próximo valor do token JSON da fonte e analisa-o para um Guid.

GetInt16()

Analisa o valor atual do token JSON da fonte como um Int16.

GetInt32()

Lê o próximo valor do token JSON da fonte e analisa-o para um Int32.

GetInt64()

Lê o próximo valor do token JSON da fonte e analisa-o para um Int64.

GetSByte()

Analisa o valor atual do token JSON da fonte como um SByte.

GetSingle()

Lê o próximo valor do token JSON da fonte e analisa-o para um Single.

GetString()

Lê o próximo valor do token JSON da fonte sem escape e transcodifica-o como uma string.

GetUInt16()

Analisa o valor atual do token JSON da fonte como um UInt16.

GetUInt32()

Lê o próximo valor do token JSON da fonte e analisa-o para um UInt32.

GetUInt64()

Lê o próximo valor do token JSON da fonte e analisa-o para um UInt64.

Read()

Lê o próximo token JSON da fonte de entrada.

Skip()

Ignora os filhos do token JSON atual.

TryGetByte(Byte)

Tenta analisar o valor atual do token JSON da origem como um Byte e devolve um valor que indica se a operação foi bem-sucedida.

TryGetBytesFromBase64(Byte[])

Tenta analisar o valor atual do token JSON da origem e descodifica a cadeia JSON codificada em Base64 como um array de bytes, devolvendo um valor que indica se a operação teve sucesso.

TryGetDateTime(DateTime)

Tenta analisar o valor atual do token JSON da origem como um DateTime e devolve um valor que indica se a operação foi bem-sucedida.

TryGetDateTimeOffset(DateTimeOffset)

Tenta analisar o valor atual do token JSON da origem como um DateTimeOffset e devolve um valor que indica se a operação foi bem-sucedida.

TryGetDecimal(Decimal)

Tenta analisar o valor atual do token JSON da origem como um Decimal e devolve um valor que indica se a operação foi bem-sucedida.

TryGetDouble(Double)

Tenta analisar o valor atual do token JSON da origem como um Double e devolve um valor que indica se a operação foi bem-sucedida.

TryGetGuid(Guid)

Tenta analisar o valor atual do token JSON da origem como um Guid e devolve um valor que indica se a operação foi bem-sucedida.

TryGetInt16(Int16)

Tenta analisar o valor atual do token JSON da fonte como um Int16 e devolve um valor que indica se a operação teve sucesso.

TryGetInt32(Int32)

Tenta analisar o valor atual do token JSON da fonte como um Int32 e devolve um valor que indica se a operação teve sucesso.

TryGetInt64(Int64)

Tenta analisar o valor atual do token JSON da fonte como um Int64 e devolve um valor que indica se a operação teve sucesso.

TryGetSByte(SByte)

Tenta analisar o valor atual do token JSON da fonte como um SByte e devolve um valor que indica se a operação teve sucesso.

TryGetSingle(Single)

Tenta analisar o valor atual do token JSON da origem como um Single e devolve um valor que indica se a operação foi bem-sucedida.

TryGetUInt16(UInt16)

Tenta analisar o valor atual do token JSON da origem como um UInt16 e devolve um valor que indica se a operação foi bem-sucedida.

TryGetUInt32(UInt32)

Tenta analisar o valor atual do token JSON da origem como um UInt32 e devolve um valor que indica se a operação foi bem-sucedida.

TryGetUInt64(UInt64)

Tenta analisar o valor atual do token JSON da origem como um UInt64 e devolve um valor que indica se a operação foi bem-sucedida.

TrySkip()

Tenta saltar os filhos do token JSON atual.

ValueTextEquals(ReadOnlySpan<Byte>)

Compara o texto codificado em UTF-8 num byte span de apenas leitura com o valor do token JSON não escapado na fonte e devolve um valor que indica se correspondem.

ValueTextEquals(ReadOnlySpan<Char>)

Compara o texto num intervalo de caracteres apenas de leitura com o valor do token JSON não escapado na fonte e devolve um valor que indica se correspondem.

ValueTextEquals(String)

Compara o texto da cadeia com o valor do token JSON não escapado na fonte e devolve um valor que indica se correspondem.

Aplica-se a