Utf8JsonReader Struktura

Definicja

Zapewnia interfejs API o wysokiej wydajności tylko do odczytu w przypadku tekstu JSON zakodowanego w formacie UTF-8.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
Dziedziczenie
Utf8JsonReader

Uwagi

Utf8JsonReader przetwarza tekst sekwencyjnie bez buforowania i domyślnie jest zgodny ze specyfikacją RFC JSON.Utf8JsonReader processes the text sequentially with no caching and by default adheres strictly to the JSON RFC.

Gdy Utf8JsonReader napotka nieprawidłowy kod JSON, generuje JsonException z podstawowymi informacjami o błędzie, takimi jak numer wiersza i pozycja bajtu w wierszu.When Utf8JsonReader encounters invalid JSON, it throws a JsonException with basic error information like line number and byte position on the line.

Ponieważ ten typ jest strukturą ref, nie obsługuje bezpośrednio asynchronicznej.Since this type is a ref struct, it doesn't directly support async. Jednak zapewnia obsługę współużytkowania wątkowości, aby odczytywać niekompletne dane i kontynuować odczytywanie po przedstawieniu większej ilości danych.However, it does provide support for reentrancy to read incomplete data and to continue reading once more data is presented.

Aby można było ustawić maksymalną głębokość podczas odczytywania lub zezwalania na pomijanie komentarzy, Utwórz wystąpienie JsonReaderOptions i przekaż je do czytnika.To be able to set max depth while reading OR allow skipping comments, create an instance of JsonReaderOptions and pass it to the reader.

Aby uzyskać więcej informacji, zobacz jak serializować i deserializować JSON.For more information, see How to serialize and deserialize JSON.

Konstruktory

Utf8JsonReader(ReadOnlySequence<Byte>, Boolean, JsonReaderState)

Inicjuje nowe wystąpienie struktury Utf8JsonReader, które przetwarza sekwencję "tylko do odczytu" zakodowanego tekstu UTF-8 i wskazuje, czy dane wejściowe zawierają cały tekst do przetworzenia.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)

Inicjuje nowe wystąpienie struktury Utf8JsonReader, które przetwarza sekwencję tekstu zakodowanego w formacie UTF-8 przy użyciu określonych opcji.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)

Inicjuje nowe wystąpienie struktury Utf8JsonReader, która przetwarza zakres tekstu zakodowanego w formacie UTF-8 i wskazuje, czy dane wejściowe zawierają cały tekst do przetworzenia.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)

Inicjuje nowe wystąpienie struktury Utf8JsonReader, która przetwarza w trybie tylko do odczytu tekst zakodowany UTF-8 przy użyciu określonych opcji.Initializes a new instance of the Utf8JsonReader structure that processes a read-only span of UTF-8 encoded text using the specified options.

Właściwości

BytesConsumed

Pobiera łączną liczbę bajtów zużytych do tej pory przez to wystąpienie Utf8JsonReader.Gets the total number of bytes consumed so far by this instance of the Utf8JsonReader.

CurrentDepth

Pobiera głębokość bieżącego tokenu.Gets the depth of the current token.

CurrentState

Pobiera bieżący stan Utf8JsonReader do przekazania do konstruktora Utf8JsonReader z większą ilością danych.Gets the current Utf8JsonReader state to pass to a Utf8JsonReader constructor with more data.

HasValueSequence

Pobiera wartość wskazującą Właściwość Value , która ma zostać użyta do pobrania wartości tokenu.Gets a value that indicates which Value property to use to get the token value.

IsFinalBlock

Pobiera tryb tego wystąpienia Utf8JsonReader, który wskazuje, czy zostały dostarczone wszystkie dane JSON, czy też jest więcej danych.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

Pobiera bieżący SequencePosition w podanym zakodowanym formacie UTF-8 ReadOnlySequence<bajt> lub domyślne SequencePosition, jeśli struktura Utf8JsonReader została skonstruowana przy użyciu ReadOnlySpan<bajt>.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

Pobiera indeks, który zaczyna się od ostatniego przetworzonego tokenu JSON (w ramach danego tekstu wejściowego w formacie UTF-8), pomijając wszystkie białe znaki.Gets the index that the last processed JSON token starts at (within the given UTF-8 encoded input text), skipping any white space.

TokenType

Pobiera typ ostatniego przetworzonego tokenu JSON w zakodowanym tekście JSON w formacie UTF-8.Gets the type of the last processed JSON token in the UTF-8 encoded JSON text.

ValueSequence

Pobiera pierwotną wartość ostatniego przetworzonego tokenu jako ReadOnlySequence<bajt> wycinka wejściowego, tylko wtedy, gdy token jest zawarty w wielu segmentach.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

Pobiera nieprzetworzoną wartość ostatniego przetworzonego tokenu jako ReadOnlySpan<bajt> wycinka wejściowego, jeśli token mieści się w pojedynczym segmencie lub jeśli czytnik został skonstruowany przy użyciu ładunku JSON zawartego w<ReadOnlySpan>bajtu.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>.

Metody

GetBoolean()

Odczytuje następną wartość tokenu JSON ze źródła jako Boolean.Reads the next JSON token value from the source as a Boolean.

GetByte()

Analizuje bieżącą wartość tokenu JSON ze źródła jako Byte.Parses the current JSON token value from the source as a Byte.

GetBytesFromBase64()

Analizuje bieżącą wartość tokenu JSON ze źródła i Dekoduje ciąg JSON zakodowany w formacie base64 jako tablicę bajtów.Parses the current JSON token value from the source and decodes the Base64 encoded JSON string as a byte array.

GetComment()

Analizuje bieżącą wartość tokenu JSON ze źródła jako komentarz, transkodowanego jako String.Parses the current JSON token value from the source as a comment, transcoded it as a String.

GetDateTime()

Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją w DateTime.Reads the next JSON token value from the source and parses it to a DateTime.

GetDateTimeOffset()

Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją w DateTimeOffset.Reads the next JSON token value from the source and parses it to a DateTimeOffset.

GetDecimal()

Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją w Decimal.Reads the next JSON token value from the source and parses it to a Decimal.

GetDouble()

Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją w Double.Reads the next JSON token value from the source and parses it to a Double.

GetGuid()

Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją w Guid.Reads the next JSON token value from the source and parses it to a Guid.

GetInt16()

Analizuje bieżącą wartość tokenu JSON ze źródła jako Int16.Parses the current JSON token value from the source as a Int16.

GetInt32()

Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją w Int32.Reads the next JSON token value from the source and parses it to an Int32.

GetInt64()

Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją w Int64.Reads the next JSON token value from the source and parses it to an Int64.

GetSByte()

Analizuje bieżącą wartość tokenu JSON ze źródła jako SByte.Parses the current JSON token value from the source as an SByte.

GetSingle()

Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją w Single.Reads the next JSON token value from the source and parses it to a Single.

GetString()

Odczytuje następną wartość tokenu JSON ze źródła, w niezmienionym kodzie i poddanej kodowi jako ciąg.Reads the next JSON token value from the source, unescaped, and transcoded as a string.

GetUInt16()

Analizuje bieżącą wartość tokenu JSON ze źródła jako UInt16.Parses the current JSON token value from the source as a UInt16.

GetUInt32()

Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją w UInt32.Reads the next JSON token value from the source and parses it to a UInt32.

GetUInt64()

Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją w UInt64.Reads the next JSON token value from the source and parses it to a UInt64.

Read()

Odczytuje następny token JSON ze źródła danych wejściowych.Reads the next JSON token from the input source.

Skip()

Pomija elementy podrzędne bieżącego tokenu JSON.Skips the children of the current JSON token.

TryGetByte(Byte)

Próbuje analizować bieżącą wartość tokenu JSON ze źródła jako Byte i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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[])

Próbuje analizować bieżącą wartość tokenu JSON ze źródła i Dekoduje ciąg JSON zakodowany w formacie base64 jako tablicę bajtową i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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)

Próbuje analizować bieżącą wartość tokenu JSON ze źródła jako DateTime i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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)

Próbuje analizować bieżącą wartość tokenu JSON ze źródła jako DateTimeOffset i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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)

Próbuje analizować bieżącą wartość tokenu JSON ze źródła jako Decimal i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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)

Próbuje analizować bieżącą wartość tokenu JSON ze źródła jako Double i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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)

Próbuje analizować bieżącą wartość tokenu JSON ze źródła jako Guid i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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)

Próbuje analizować bieżącą wartość tokenu JSON ze źródła jako Int16 i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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)

Próbuje analizować bieżącą wartość tokenu JSON ze źródła jako Int32 i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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)

Próbuje analizować bieżącą wartość tokenu JSON ze źródła jako Int64 i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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)

Próbuje analizować bieżącą wartość tokenu JSON ze źródła jako SByte i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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)

Próbuje analizować bieżącą wartość tokenu JSON ze źródła jako Single i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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)

Próbuje analizować bieżącą wartość tokenu JSON ze źródła jako UInt16 i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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)

Próbuje analizować bieżącą wartość tokenu JSON ze źródła jako UInt32 i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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)

Próbuje analizować bieżącą wartość tokenu JSON ze źródła jako UInt64 i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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()

Próbuje pominąć elementy podrzędne bieżącego tokenu JSON.Tries to skip the children of the current JSON token.

ValueTextEquals(ReadOnlySpan<Byte>)

Porównuje tekst zakodowany w formacie UTF-8 w zakresie bajtów tylko do odczytu do niezmienionej wartości tokenu JSON w źródle i zwraca wartość wskazującą, czy są one zgodne.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>)

Porównuje tekst w przedziale "tylko do odczytu" do niezmienionej wartości tokenu JSON w źródle i zwraca wartość wskazującą, czy są one zgodne.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)

Porównuje tekst ciągu z niezmienionym tokenem JSON w źródle i zwraca wartość wskazującą, czy są one zgodne.Compares the string text to the unescaped JSON token value in the source and returns a value that indicates whether they match.

Dotyczy