Utf8JsonReader Structure

Définition

Fournit une API hautes performances pour un accès en transfert seul et en lecture seule à du texte JSON encodé en UTF-8.

public value class Utf8JsonReader
public ref struct Utf8JsonReader
type Utf8JsonReader = struct
Public Structure Utf8JsonReader
Héritage
Utf8JsonReader

Remarques

Utf8JsonReader traite le texte de manière séquentielle sans mise en cache et par défaut respecte strictement le RFC JSON.

Lorsque Utf8JsonReader vous rencontrez un JSON non valide, il lève des informations d’erreur JsonException de base telles que le numéro de ligne et la position d’octet sur la ligne.

Étant donné que ce type est un struct ref, il ne prend pas directement en charge async. Toutefois, il prend en charge la réentrance pour lire des données incomplètes et continuer à lire une fois que plusieurs données sont présentées.

Pour pouvoir définir une profondeur maximale lors de la lecture ou autoriser les commentaires ignorés, créez une instance et JsonReaderOptions transmettez-la au lecteur.

Pour plus d’informations, consultez Comment écrire des sérialiseurs personnalisés et des désérialiseurs avec System.Text.Json.

Constructeurs

Utf8JsonReader(ReadOnlySequence<Byte>, Boolean, JsonReaderState)

Initialise une nouvelle instance de la structure Utf8JsonReader qui traite une séquence en lecture seule de texte encodé en UTF-8 et indique si l’entrée contient tout le texte à traiter.

Utf8JsonReader(ReadOnlySequence<Byte>, JsonReaderOptions)

Initialise une nouvelle instance de la structure Utf8JsonReader qui traite une séquence en lecture seule de texte encodé en UTF-8 à l’aide des options spécifiées.

Utf8JsonReader(ReadOnlySpan<Byte>, Boolean, JsonReaderState)

Initialise une nouvelle instance de la structure Utf8JsonReader qui traite une étendue en lecture seule de texte encodé en UTF-8 et indique si l’entrée contient tout le texte à traiter.

Utf8JsonReader(ReadOnlySpan<Byte>, JsonReaderOptions)

Initialise une nouvelle instance de la structure Utf8JsonReader qui traite une étendue en lecture seule de texte encodé en UTF-8 à l’aide des options spécifiées.

Propriétés

BytesConsumed

Obtient le nombre total d’octets consommés jusqu’à présent par cette instance du Utf8JsonReader.

CurrentDepth

Obtient la profondeur du jeton actuel.

CurrentState

Obtient l’état Utf8JsonReader actuel à passer à un constructeur Utf8JsonReader avec davantage de données.

HasValueSequence

Obtient une valeur qui indique quelle propriété Value utiliser pour obtenir la valeur du jeton.

IsFinalBlock

Obtient le mode de cette instance du Utf8JsonReader qui indique si toutes les données JSON ont été fournies ou s’il y a d’autres données à venir.

Position

Obtient la SequencePosition actuelle dans la ReadOnlySequence<byte> de l’entrée encodée en UTF-8 fournie ou la SequencePosition par défaut si le struct Utf8JsonReader a été construit avec un ReadOnlySpan<byte>.

TokenStartIndex

Obtient l’index à partir duquel commence le dernier jeton JSON traité (dans le texte d’entrée encodé en UTF-8 donné), en ignorant tout espace blanc.

TokenType

Obtient le type du dernier jeton JSON traité dans le texte JSON encodé en UTF-8.

ValueIsEscaped

Obtient une valeur qui indique si les séquences d’échappement actuelles ValueSpan ou ValueSequence les propriétés contiennent des séquences d’échappement par RFC 8259 section 7 et nécessitent donc une mise encapsulation avant d’être consommées.

ValueSequence

Obtient la valeur brute du dernier jeton traité en tant que section ReadOnlySequence<byte> de la charge utile d’entrée, uniquement si le jeton est contenu dans plusieurs segments.

ValueSpan

Obtient la valeur brute du dernier jeton traité en tant que section ReadOnlySpan<byte> de la charge utile d’entrée, si le jeton entre dans un seul segment ou si le lecteur a été construit avec une charge utile JSON contenue dans un ReadOnlySpan<byte>.

Méthodes

CopyString(Span<Byte>)

Copie la valeur de jeton JSON actuelle à partir de la source, non échapée en tant que chaîne UTF-8 dans la mémoire tampon de destination.

CopyString(Span<Char>)

Copie la valeur de jeton JSON actuelle à partir de la source, non boucrée et transcodée en tant que mémoire tampon de caractères UTF-16.

GetBoolean()

Lit la prochaine valeur du jeton JSON de la source comme Boolean.

GetByte()

Analyse la valeur du jeton JSON actuelle de la source comme Byte.

GetBytesFromBase64()

Analyse la valeur actuelle du jeton JSON à partir de la source et décode la chaîne JSON encodée en Base64 en tant que tableau d’octets.

GetComment()

Analyse la valeur actuelle du jeton JSON à partir de la source en tant que commentaire, transcodé en String.

GetDateTime()

Lit la prochaine valeur du jeton JSON de la source et l’analyse pour obtenir une valeur DateTime.

GetDateTimeOffset()

Lit la prochaine valeur du jeton JSON de la source et l’analyse pour obtenir une valeur DateTimeOffset.

GetDecimal()

Lit la prochaine valeur du jeton JSON de la source et l’analyse pour obtenir une valeur Decimal.

GetDouble()

Lit la prochaine valeur du jeton JSON de la source et l’analyse pour obtenir une valeur Double.

GetGuid()

Lit la prochaine valeur du jeton JSON de la source et l’analyse pour obtenir une valeur Guid.

GetInt16()

Analyse la valeur du jeton JSON actuelle de la source comme Int16.

GetInt32()

Lit la prochaine valeur du jeton JSON de la source et l’analyse pour obtenir une valeur Int32.

GetInt64()

Lit la prochaine valeur du jeton JSON de la source et l’analyse pour obtenir une valeur Int64.

GetSByte()

Analyse la valeur du jeton JSON actuelle de la source comme SByte.

GetSingle()

Lit la prochaine valeur du jeton JSON de la source et l’analyse pour obtenir une valeur Single.

GetString()

Lit la prochaine valeur du jeton JSON de la source, non échappée et transcodée, comme une chaîne.

GetUInt16()

Analyse la valeur du jeton JSON actuelle de la source comme UInt16.

GetUInt32()

Lit la prochaine valeur du jeton JSON de la source et l’analyse pour obtenir une valeur UInt32.

GetUInt64()

Lit la prochaine valeur du jeton JSON de la source et l’analyse pour obtenir une valeur UInt64.

Read()

Lit le prochain jeton JSON de la source d’entrée.

Skip()

Ignore les enfants du jeton JSON actuel.

TryGetByte(Byte)

Tente d’analyser la valeur du jeton JSON actuelle de la source en tant que Byte et retourne une valeur qui indique si l’opération a réussi.

TryGetBytesFromBase64(Byte[])

Tente d’analyser la valeur du jeton JSON actuelle de la source et décode la chaîne JSON encodée en Base64 en tant que tableau d’octets et retourne une valeur qui indique si l’opération a réussi.

TryGetDateTime(DateTime)

Tente d’analyser la valeur du jeton JSON actuelle de la source en tant que DateTime et retourne une valeur qui indique si l’opération a réussi.

TryGetDateTimeOffset(DateTimeOffset)

Tente d’analyser la valeur du jeton JSON actuelle de la source en tant que DateTimeOffset et retourne une valeur qui indique si l’opération a réussi.

TryGetDecimal(Decimal)

Tente d’analyser la valeur du jeton JSON actuelle de la source en tant que Decimal et retourne une valeur qui indique si l’opération a réussi.

TryGetDouble(Double)

Tente d’analyser la valeur du jeton JSON actuelle de la source en tant que Double et retourne une valeur qui indique si l’opération a réussi.

TryGetGuid(Guid)

Tente d’analyser la valeur du jeton JSON actuelle de la source en tant que Guid et retourne une valeur qui indique si l’opération a réussi.

TryGetInt16(Int16)

Tente d’analyser la valeur du jeton JSON actuelle de la source en tant que Int16 et retourne une valeur qui indique si l’opération a réussi.

TryGetInt32(Int32)

Tente d’analyser la valeur du jeton JSON actuelle de la source en tant que Int32 et retourne une valeur qui indique si l’opération a réussi.

TryGetInt64(Int64)

Tente d’analyser la valeur du jeton JSON actuelle de la source en tant que Int64 et retourne une valeur qui indique si l’opération a réussi.

TryGetSByte(SByte)

Tente d’analyser la valeur du jeton JSON actuelle de la source en tant que SByte et retourne une valeur qui indique si l’opération a réussi.

TryGetSingle(Single)

Tente d’analyser la valeur du jeton JSON actuelle de la source en tant que Single et retourne une valeur qui indique si l’opération a réussi.

TryGetUInt16(UInt16)

Tente d’analyser la valeur du jeton JSON actuelle de la source en tant que UInt16 et retourne une valeur qui indique si l’opération a réussi.

TryGetUInt32(UInt32)

Tente d’analyser la valeur du jeton JSON actuelle de la source en tant que UInt32 et retourne une valeur qui indique si l’opération a réussi.

TryGetUInt64(UInt64)

Tente d’analyser la valeur du jeton JSON actuelle de la source en tant que UInt64 et retourne une valeur qui indique si l’opération a réussi.

TrySkip()

Tente d’ignorer les enfants du jeton JSON actuel.

ValueTextEquals(ReadOnlySpan<Byte>)

Compare le texte encodé en UTF-8 dans une étendue en lecture seule d’octets à la valeur du jeton JSON sans séquence d’échappement dans la source et retourne une valeur qui indique s’ils correspondent.

ValueTextEquals(ReadOnlySpan<Char>)

Compare le texte dans une étendue en lecture seule de caractères en lecture seule à la valeur du jeton JSON sans séquence d’échappement dans la source et retourne une valeur qui indique s’ils correspondent.

ValueTextEquals(String)

Compare le texte de chaîne à la valeur du jeton JSON sans séquence d’échappement dans la source et retourne une valeur qui indique s’ils correspondent.

S’applique à