Utf8JsonReader Struktur

Definition

Stellt eine leistungsstarke API für schreibgeschützten Zugriff auf UTF-8-codierten JSON-Text in Vorwärtsrichtung bereit.Provides a high-performance API for forward-only, read-only access to UTF-8 encoded JSON text.

public value class Utf8JsonReader
public struct Utf8JsonReader
type Utf8JsonReader = struct
Public Structure Utf8JsonReader
Vererbung
Utf8JsonReader

Hinweise

Utf8JsonReader verarbeitet den Text sequenziell ohne Zwischenspeichern und entspricht standardmäßig strikt der JSON RFC.Utf8JsonReader processes the text sequentially with no caching and by default adheres strictly to the JSON RFC.

Wenn Utf8JsonReader auf ungültige JSON stößt, wird eine JsonException mit grundlegenden Fehlerinformationen wie Zeilennummer und Byte Position in der Zeile ausgelöst.When Utf8JsonReader encounters invalid JSON, it throws a JsonException with basic error information like line number and byte position on the line.

Da dieser Typ eine Ref-Struktur ist, wird Async nicht direkt unterstützt.Since this type is a ref struct, it doesn't directly support async. Es bietet jedoch Unterstützung für den erneuten eintreten zum Lesen unvollständiger Daten und zum weiteren lesen, wenn weitere Daten angezeigt werden.However, it does provide support for reentrancy to read incomplete data and to continue reading once more data is presented.

Um die maximale Tiefe beim Lesen oder Zulassen von Kommentaren festzulegen, erstellen Sie eine Instanz von JsonReaderOptions und übergeben Sie Sie an den Reader.To be able to set max depth while reading OR allow skipping comments, create an instance of JsonReaderOptions and pass it to the reader.

Weitere Informationen finden Sie unter Gewusst wie: Serialisieren und Deserialisieren von JSON.For more information, see How to serialize and deserialize JSON.

Konstruktoren

Utf8JsonReader(ReadOnlySequence<Byte>, Boolean, JsonReaderState)

Initialisiert eine neue Instanz der Utf8JsonReader-Struktur, mit der eine schreibgeschützte Sequenz mit UTF-8-codiertem Text verarbeitet und angegeben wird, ob die Eingabe den gesamten zu verarbeitenden Text enthält.Initializes a new instance of the Utf8JsonReader structure that processes a read-only sequence of UTF-8 encoded text and indicates whether the input contains all the text to process.

Utf8JsonReader(ReadOnlySequence<Byte>, JsonReaderOptions)

Initialisiert eine neue Instanz der Utf8JsonReader-Struktur, mit der eine schreibgeschützte Sequenz mit UTF-8-codiertem Text verarbeitet wird, indem die angegebenen Optionen verwendet werden.Initializes a new instance of the Utf8JsonReader structure that processes a read-only sequence of UTF-8 encoded text using the specified options.

Utf8JsonReader(ReadOnlySpan<Byte>, Boolean, JsonReaderState)

Initialisiert eine neue Instanz der Utf8JsonReader-Struktur, mit der ein schreibgeschützter Bereich mit UTF-8-codiertem Text verarbeitet und angegeben wird, ob die Eingabe den gesamten zu verarbeitenden Text enthält.Initializes a new instance of the Utf8JsonReader structure that processes a read-only span of UTF-8 encoded text and indicates whether the input contains all the text to process.

Utf8JsonReader(ReadOnlySpan<Byte>, JsonReaderOptions)

Initialisiert eine neue Instanz der Utf8JsonReader-Struktur, mit der ein schreibgeschützter Bereich mit UTF-8-codiertem Text verarbeitet wird, indem die angegebenen Optionen verwendet werden.Initializes a new instance of the Utf8JsonReader structure that processes a read-only span of UTF-8 encoded text using the specified options.

Eigenschaften

BytesConsumed

Ruft die gesamte Anzahl von Bytes ab, die von dieser Instanz von Utf8JsonReader bisher verbraucht wurden.Gets the total number of bytes consumed so far by this instance of the Utf8JsonReader.

CurrentDepth

Ruft die Tiefe des aktuellen Tokens ab.Gets the depth of the current token.

CurrentState

Ruft den aktuellen Utf8JsonReader-Zustand ab, um ihn an einen Utf8JsonReader-Konstruktor mit weiteren Daten zu übergeben.Gets the current Utf8JsonReader state to pass to a Utf8JsonReader constructor with more data.

HasValueSequence

Ruft einen Wert an, der angibt, welche Value-Eigenschaft zum Abrufen des Tokenwerts zu verwenden ist.Gets a value that indicates which Value property to use to get the token value.

IsFinalBlock

Ruft den Modus dieser Instanz von Utf8JsonReader ab, der angibt, ob die gesamten JSON-Daten übergeben wurden oder weitere folgen.Gets the mode of this instance of the Utf8JsonReader which indicates whether all the JSON data was provided or there is more data to come.

Position

Ruft die aktuelle SequencePosition innerhalb des bereitgestellten UTF-8-codierten ReadOnlySequence<Byte> der Eingabe oder einen SequencePosition-Standardwert ab, wenn die Utf8JsonReader-Struktur mit einem ReadOnlySpan<Byte> erstellt wurde.Gets the current SequencePosition within the provided UTF-8 encoded input ReadOnlySequence<byte> or a default SequencePosition if the Utf8JsonReader struct was constructed with a ReadOnlySpan<byte>.

TokenStartIndex

Ruft den Index ab, an dem das zuletzt verarbeitete JSON-Token beginnt (innerhalb des angegebenen UTF-8-codierten Eingabetexts), wobei Leerraum übersprungen wird.Gets the index that the last processed JSON token starts at (within the given UTF-8 encoded input text), skipping any white space.

TokenType

Ruft den Typ des zuletzt verarbeiteten JSON-Tokens im UTF-8-codierten JSON-Text ab.Gets the type of the last processed JSON token in the UTF-8 encoded JSON text.

ValueSequence

Ruft den Rohwert des zuletzt verarbeiteten Tokens als ReadOnlySequence<byte>-Slice der Eingangsnutzlast nur ab, wenn das Token in mehreren Segmenten enthalten ist.Gets the raw value of the last processed token as a ReadOnlySequence<byte> slice of the input payload, only if the token is contained within multiple segments.

ValueSpan

Ruft den Rohwert des zuletzt verarbeiteten Tokens als ReadOnlySpan<byte>-Slice der Eingangsnutzlast ab, wenn das Token in ein einzelnes Segment passt oder wenn der Leser mit einer JSON-Nutzlast konstruiert wurde, die in einem ReadOnlySpan<byte> enthalten ist.Gets the raw value of the last processed token as a ReadOnlySpan<byte> slice of the input payload, if the token fits in a single segment or if the reader was constructed with a JSON payload contained in a ReadOnlySpan<byte>.

Methoden

GetBoolean()

Liest den nächsten JSON-Tokenwert aus der Quelle als einen Boolean-Wert.Reads the next JSON token value from the source as a Boolean.

GetByte()

Analysiert den aktuellen JSON-Tokenwert aus der Quelle als Byte.Parses the current JSON token value from the source as a Byte.

GetBytesFromBase64()

Analysiert den Wert des aktuellen JSON-Tokens aus der Quelle und decodiert die Base64-codierte JSON-Zeichenfolge als Bytearray.Parses the current JSON token value from the source and decodes the Base64 encoded JSON string as a byte array.

GetComment()

Analysiert den Wert des aktuellen JSON-Tokens aus der Quelle als Kommentar, in einen String transcodiert.Parses the current JSON token value from the source as a comment, transcoded it as a String.

GetDateTime()

Liest den nächsten JSON-Tokenwert aus der Quelle und analysiert ihn in einen DateTime-Wert.Reads the next JSON token value from the source and parses it to a DateTime.

GetDateTimeOffset()

Liest den nächsten JSON-Tokenwert aus der Quelle und analysiert ihn in einen DateTimeOffset-Wert.Reads the next JSON token value from the source and parses it to a DateTimeOffset.

GetDecimal()

Liest den nächsten JSON-Tokenwert aus der Quelle und analysiert ihn in einen Decimal-Wert.Reads the next JSON token value from the source and parses it to a Decimal.

GetDouble()

Liest den nächsten JSON-Tokenwert aus der Quelle und analysiert ihn in einen Double-Wert.Reads the next JSON token value from the source and parses it to a Double.

GetGuid()

Liest den nächsten JSON-Tokenwert aus der Quelle und analysiert ihn in einen Guid-Wert.Reads the next JSON token value from the source and parses it to a Guid.

GetInt16()

Analysiert den aktuellen JSON-Tokenwert aus der Quelle als Int16.Parses the current JSON token value from the source as a Int16.

GetInt32()

Liest den nächsten JSON-Tokenwert aus der Quelle und analysiert ihn in einen Int32-Wert.Reads the next JSON token value from the source and parses it to an Int32.

GetInt64()

Liest den nächsten JSON-Tokenwert aus der Quelle und analysiert ihn in einen Int64-Wert.Reads the next JSON token value from the source and parses it to an Int64.

GetSByte()

Analysiert den aktuellen JSON-Tokenwert aus der Quelle als SByte.Parses the current JSON token value from the source as an SByte.

GetSingle()

Liest den nächsten JSON-Tokenwert aus der Quelle und analysiert ihn in einen Single-Wert.Reads the next JSON token value from the source and parses it to a Single.

GetString()

Liest den nächsten JSON-Tokenwert aus der Quelle (ohne Escapezeichen und als Zeichenfolge transcodiert).Reads the next JSON token value from the source, unescaped, and transcoded as a string.

GetUInt16()

Analysiert den aktuellen JSON-Tokenwert aus der Quelle als UInt16.Parses the current JSON token value from the source as a UInt16.

GetUInt32()

Liest den nächsten JSON-Tokenwert aus der Quelle und analysiert ihn in einen UInt32-Wert.Reads the next JSON token value from the source and parses it to a UInt32.

GetUInt64()

Liest den nächsten JSON-Tokenwert aus der Quelle und analysiert ihn in einen UInt64-Wert.Reads the next JSON token value from the source and parses it to a UInt64.

Read()

Liest das nächste JSON-Token aus der Eingabequelle.Reads the next JSON token from the input source.

Skip()

Überspringt die untergeordneten Elemente des aktuellen JSON-Tokens.Skips the children of the current JSON token.

TryGetByte(Byte)

Es wird versucht, den aktuellen JSON-Tokenwert aus der Quelle als Byte zu analysieren, und es wird ein Wert zurückgegeben, mit dem der Erfolg bzw. Misserfolg des Vorgangs angegeben wird.Tries to parse the current JSON token value from the source as a Byte and returns a value that indicates whether the operation succeeded.

TryGetBytesFromBase64(Byte[])

Es wird versucht, den aktuellen JSON-Tokenwert aus der Quelle zu analysieren. Die Base64-codierte JSON-Zeichenfolge wird als Bytearray decodiert, und es wird ein Wert zurückgegeben, mit dem der Erfolg bzw. Misserfolg des Vorgangs angegeben wird.Tries to parse the current JSON token value from the source and decodes the Base64 encoded JSON string as a byte array and returns a value that indicates whether the operation succeeded.

TryGetDateTime(DateTime)

Es wird versucht, den aktuellen JSON-Tokenwert aus der Quelle als DateTime zu analysieren, und es wird ein Wert zurückgegeben, mit dem der Erfolg bzw. Misserfolg des Vorgangs angegeben wird.Tries to parse the current JSON token value from the source as a DateTime and returns a value that indicates whether the operation succeeded.

TryGetDateTimeOffset(DateTimeOffset)

Es wird versucht, den aktuellen JSON-Tokenwert aus der Quelle als DateTimeOffset zu analysieren, und es wird ein Wert zurückgegeben, mit dem der Erfolg bzw. Misserfolg des Vorgangs angegeben wird.Tries to parse the current JSON token value from the source as a DateTimeOffset and returns a value that indicates whether the operation succeeded.

TryGetDecimal(Decimal)

Es wird versucht, den aktuellen JSON-Tokenwert aus der Quelle als Decimal zu analysieren, und es wird ein Wert zurückgegeben, mit dem der Erfolg bzw. Misserfolg des Vorgangs angegeben wird.Tries to parse the current JSON token value from the source as a Decimal and returns a value that indicates whether the operation succeeded.

TryGetDouble(Double)

Es wird versucht, den aktuellen JSON-Tokenwert aus der Quelle als Double zu analysieren, und es wird ein Wert zurückgegeben, mit dem der Erfolg bzw. Misserfolg des Vorgangs angegeben wird.Tries to parse the current JSON token value from the source as a Double and returns a value that indicates whether the operation succeeded.

TryGetGuid(Guid)

Es wird versucht, den aktuellen JSON-Tokenwert aus der Quelle als Guid zu analysieren, und es wird ein Wert zurückgegeben, mit dem der Erfolg bzw. Misserfolg des Vorgangs angegeben wird.Tries to parse the current JSON token value from the source as a Guid and returns a value that indicates whether the operation succeeded.

TryGetInt16(Int16)

Es wird versucht, den aktuellen JSON-Tokenwert aus der Quelle als Int16 zu analysieren, und es wird ein Wert zurückgegeben, mit dem der Erfolg bzw. Misserfolg des Vorgangs angegeben wird.Tries to parse the current JSON token value from the source as an Int16 and returns a value that indicates whether the operation succeeded.

TryGetInt32(Int32)

Es wird versucht, den aktuellen JSON-Tokenwert aus der Quelle als Int32 zu analysieren, und es wird ein Wert zurückgegeben, mit dem der Erfolg bzw. Misserfolg des Vorgangs angegeben wird.Tries to parse the current JSON token value from the source as an Int32 and returns a value that indicates whether the operation succeeded.

TryGetInt64(Int64)

Es wird versucht, den aktuellen JSON-Tokenwert aus der Quelle als Int64 zu analysieren, und es wird ein Wert zurückgegeben, mit dem der Erfolg bzw. Misserfolg des Vorgangs angegeben wird.Tries to parse the current JSON token value from the source as an Int64 and returns a value that indicates whether the operation succeeded.

TryGetSByte(SByte)

Es wird versucht, den aktuellen JSON-Tokenwert aus der Quelle als SByte zu analysieren, und es wird ein Wert zurückgegeben, mit dem der Erfolg bzw. Misserfolg des Vorgangs angegeben wird.Tries to parse the current JSON token value from the source as an SByte and returns a value that indicates whether the operation succeeded.

TryGetSingle(Single)

Es wird versucht, den aktuellen JSON-Tokenwert aus der Quelle als Single zu analysieren, und es wird ein Wert zurückgegeben, mit dem der Erfolg bzw. Misserfolg des Vorgangs angegeben wird.Tries to parse the current JSON token value from the source as a Single and returns a value that indicates whether the operation succeeded.

TryGetUInt16(UInt16)

Es wird versucht, den aktuellen JSON-Tokenwert aus der Quelle als UInt16 zu analysieren, und es wird ein Wert zurückgegeben, mit dem der Erfolg bzw. Misserfolg des Vorgangs angegeben wird.Tries to parse the current JSON token value from the source as a UInt16 and returns a value that indicates whether the operation succeeded.

TryGetUInt32(UInt32)

Es wird versucht, den aktuellen JSON-Tokenwert aus der Quelle als UInt32 zu analysieren, und es wird ein Wert zurückgegeben, mit dem der Erfolg bzw. Misserfolg des Vorgangs angegeben wird.Tries to parse the current JSON token value from the source as a UInt32 and returns a value that indicates whether the operation succeeded.

TryGetUInt64(UInt64)

Es wird versucht, den aktuellen JSON-Tokenwert aus der Quelle als UInt64 zu analysieren, und es wird ein Wert zurückgegeben, mit dem der Erfolg bzw. Misserfolg des Vorgangs angegeben wird.Tries to parse the current JSON token value from the source as a UInt64 and returns a value that indicates whether the operation succeeded.

TrySkip()

Versucht, die untergeordneten Elemente des aktuellen JSON-Tokens zu überspringen.Tries to skip the children of the current JSON token.

ValueTextEquals(ReadOnlySpan<Byte>)

Vergleicht den UTF-8-codierten Text in einem schreibgeschützten Bytebereich mit dem JSON-Tokenwert ohne Escapezeichen in der Quelle und gibt einen Wert zurück, der angibt, ob eine Übereinstimmung besteht.Compares the UTF-8 encoded text in a read-only byte span to the unescaped JSON token value in the source and returns a value that indicates whether they match.

ValueTextEquals(ReadOnlySpan<Char>)

Vergleicht den Text in einem Zeichenbereich mit dem JSON-Tokenwert ohne Escapezeichen in der Quelle und gibt einen Wert zurück, der angibt, ob eine Übereinstimmung besteht.Compares the text in a read-only character span to the unescaped JSON token value in the source and returns a value that indicates whether they match.

ValueTextEquals(String)

Vergleicht den angegebenen Zeichenfolgentext mit dem JSON-Tokenwert ohne Escapezeichen in der Quelle und gibt einen Wert zurück, der angibt, ob eine Übereinstimmung besteht.Compares the string text to the unescaped JSON token value in the source and returns a value that indicates whether they match.

Gilt für: