Utf8JsonReader Struktura
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zapewnia interfejs API o wysokiej wydajności na potrzeby dostępu tylko do odczytu do tekstu JSON zakodowanego w formacie UTF-8.
public value class Utf8JsonReader
public ref struct Utf8JsonReader
type Utf8JsonReader = struct
Public Structure Utf8JsonReader
- Dziedziczenie
Uwagi
Utf8JsonReader przetwarza tekst sekwencyjnie bez buforowania i domyślnie jest ściśle zgodny z JSON RFC.
W przypadku Utf8JsonReader napotkania nieprawidłowego JsonException kodu JSON zgłasza on podstawowe informacje o błędzie, takie jak numer wiersza i położenie bajtów w wierszu.
Ponieważ ten typ jest strukturą ref, nie obsługuje bezpośrednio asynchronicznego. Jednak zapewnia obsługę ponownego wywrotu w celu odczytywania niekompletnych danych i kontynuowania odczytywania po raz kolejny danych.
Aby można było ustawić maksymalną głębokość podczas odczytywania lub zezwalać na pomijanie komentarzy, utwórz wystąpienie JsonReaderOptions i przekaż ją do czytnika.
Aby uzyskać więcej informacji, zobacz How to write custom serializers and deserializers with System.Text.Json (Jak pisać niestandardowe serializatory i deserializatory za pomocą pliku System.Text.Json).
Konstruktory
| Utf8JsonReader(ReadOnlySequence<Byte>, Boolean, JsonReaderState) |
Inicjuje Utf8JsonReader nowe wystąpienie struktury, która przetwarza sekwencję tylko do odczytu zakodowanego tekstu UTF-8 i wskazuje, czy dane wejściowe zawierają cały tekst do przetworzenia. |
| Utf8JsonReader(ReadOnlySequence<Byte>, JsonReaderOptions) |
Inicjuje Utf8JsonReader nowe wystąpienie struktury, która przetwarza sekwencję tylko do odczytu zakodowanego tekstu UTF-8 przy użyciu określonych opcji. |
| Utf8JsonReader(ReadOnlySpan<Byte>, Boolean, JsonReaderState) |
Inicjuje Utf8JsonReader nowe wystąpienie struktury, która przetwarza tylko do odczytu zakodowany tekst UTF-8 i wskazuje, czy dane wejściowe zawierają cały tekst do przetworzenia. |
| Utf8JsonReader(ReadOnlySpan<Byte>, JsonReaderOptions) |
Inicjuje Utf8JsonReader nowe wystąpienie struktury, która przetwarza zakres tylko do odczytu zakodowanego tekstu UTF-8 przy użyciu określonych opcji. |
Właściwości
| BytesConsumed |
Pobiera łączną liczbę bajtów użytych do tej pory przez to wystąpienie klasy Utf8JsonReader. |
| CurrentDepth |
Pobiera głębokość bieżącego tokenu. |
| CurrentState |
Pobiera bieżący Utf8JsonReader stan, który ma być przekazywany do konstruktora z większą ilością Utf8JsonReader danych. |
| HasValueSequence |
Pobiera wartość wskazującą, której właściwości |
| IsFinalBlock |
Pobiera tryb tego wystąpienia Utf8JsonReader , który wskazuje, czy wszystkie dane JSON zostały dostarczone, czy też są dostępne więcej danych. |
| Position |
Pobiera bieżący w SequencePosition ramach podanego zakodowanego w formacie UTF-8 bajtu> wejściowego ReadOnlySequence<lub wartość domyślnąSequencePosition, jeśli Utf8JsonReader struktura została skonstruowana przy użyciu bajtu> ReadOnlySpan<. |
| TokenStartIndex |
Pobiera indeks rozpoczynający się od ostatniego przetworzonego tokenu JSON (w ramach określonego zakodowanego tekstu wejściowego UTF-8), pomijając wszelkie białe znaki. |
| TokenType |
Pobiera typ ostatniego przetworzonego tokenu JSON w tekście JSON zakodowanym w formacie UTF-8. |
| ValueIsEscaped |
Pobiera wartość wskazującą, czy bieżąca ValueSpan lub ValueSequence właściwości zawierają sekwencje ucieczki dla sekcji 8259 RFC 7, a zatem wymagają odłączenia przed zużyciem. |
| ValueSequence |
Pobiera nieprzetworzoną wartość ostatniego przetworzonego tokenu jako wycinka bajtów> readOnlySequence<ładunku wejściowego, tylko wtedy, gdy token znajduje się w wielu segmentach. |
| ValueSpan |
Pobiera nieprzetworzoną wartość ostatniego przetworzonego tokenu jako fragment bajtu readOnlySpan<> ładunku wejściowego, jeśli token mieści się w jednym segmencie lub jeśli czytnik został skonstruowany z ładunkiem JSON zawartym w bajtach> ReadOnlySpan<. |
Metody
| CopyString(Span<Byte>) |
Kopiuje bieżącą wartość tokenu JSON ze źródła, unescaped jako ciąg UTF-8 do buforu docelowego. |
| CopyString(Span<Char>) |
Kopiuje bieżącą wartość tokenu JSON ze źródła, unescaped i transkodowane jako bufor UTF-16 char. |
| GetBoolean() |
Odczytuje następną wartość tokenu JSON ze źródła jako Boolean. |
| GetByte() |
Analizuje bieżącą wartość tokenu JSON ze źródła jako 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. |
| GetComment() |
Analizuje bieżącą wartość tokenu JSON ze źródła jako komentarz, transkodował ją jako String. |
| GetDateTime() |
Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją do elementu DateTime. |
| GetDateTimeOffset() |
Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją do elementu DateTimeOffset. |
| GetDecimal() |
Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją do elementu Decimal. |
| GetDouble() |
Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją do elementu Double. |
| GetGuid() |
Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją do elementu Guid. |
| GetInt16() |
Analizuje bieżącą wartość tokenu JSON ze źródła jako Int16. |
| GetInt32() |
Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją do elementu Int32. |
| GetInt64() |
Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją do elementu Int64. |
| GetSByte() |
Analizuje bieżącą wartość tokenu JSON ze źródła jako SByte. |
| GetSingle() |
Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją do elementu Single. |
| GetString() |
Odczytuje następną wartość tokenu JSON ze źródła, nieobejmowanego elementu i transkodowanego jako ciąg. |
| GetUInt16() |
Analizuje bieżącą wartość tokenu JSON ze źródła jako UInt16. |
| GetUInt32() |
Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją do elementu UInt32. |
| GetUInt64() |
Odczytuje następną wartość tokenu JSON ze źródła i analizuje ją do elementu UInt64. |
| Read() |
Odczytuje następny token JSON ze źródła wejściowego. |
| Skip() |
Pomija elementy podrzędne bieżącego tokenu JSON. |
| TryGetByte(Byte) |
Próbuje przeanalizować bieżącą wartość tokenu JSON ze źródła jako Byte wartość i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie. |
| TryGetBytesFromBase64(Byte[]) |
Próbuje przeanalizować bieżącą wartość tokenu JSON ze źródła i zdekoduje ciąg JSON zakodowany w formacie Base64 jako tablicę bajtów i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie. |
| TryGetDateTime(DateTime) |
Próbuje przeanalizować bieżącą wartość tokenu JSON ze źródła jako DateTime wartość i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie. |
| TryGetDateTimeOffset(DateTimeOffset) |
Próbuje przeanalizować bieżącą wartość tokenu JSON ze źródła jako DateTimeOffset wartość i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie. |
| TryGetDecimal(Decimal) |
Próbuje przeanalizować bieżącą wartość tokenu JSON ze źródła jako Decimal wartość i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie. |
| TryGetDouble(Double) |
Próbuje przeanalizować bieżącą wartość tokenu JSON ze źródła jako Double wartość i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie. |
| TryGetGuid(Guid) |
Próbuje przeanalizować bieżącą wartość tokenu JSON ze źródła jako Guid wartość i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie. |
| TryGetInt16(Int16) |
Próbuje przeanalizować bieżącą wartość tokenu JSON ze źródła jako Int16 wartość i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie. |
| TryGetInt32(Int32) |
Próbuje przeanalizować bieżącą wartość tokenu JSON ze źródła jako Int32 wartość i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie. |
| TryGetInt64(Int64) |
Próbuje przeanalizować bieżącą wartość tokenu JSON ze źródła jako Int64 wartość i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie. |
| TryGetSByte(SByte) |
Próbuje przeanalizować bieżącą wartość tokenu JSON ze źródła jako SByte wartość i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie. |
| TryGetSingle(Single) |
Próbuje przeanalizować bieżącą wartość tokenu JSON ze źródła jako Single wartość i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie. |
| TryGetUInt16(UInt16) |
Próbuje przeanalizować bieżącą wartość tokenu JSON ze źródła jako UInt16 wartość i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie. |
| TryGetUInt32(UInt32) |
Próbuje przeanalizować bieżącą wartość tokenu JSON ze źródła jako UInt32 wartość i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie. |
| TryGetUInt64(UInt64) |
Próbuje przeanalizować bieżącą wartość tokenu JSON ze źródła jako UInt64 wartość i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie. |
| TrySkip() |
Próbuje pominąć elementy podrzędne bieżącego tokenu JSON. |
| ValueTextEquals(ReadOnlySpan<Byte>) |
Porównuje zakodowany w formacie UTF-8 tekst w zakresie bajtów tylko do odczytu z wartością tokenu JSON niewyobrażanego w źródle i zwraca wartość wskazującą, czy są one zgodne. |
| ValueTextEquals(ReadOnlySpan<Char>) |
Porównuje tekst w zakresie znaków tylko do odczytu z niezaużytą wartością tokenu JSON w źródle i zwraca wartość wskazującą, czy są one zgodne. |
| ValueTextEquals(String) |
Porównuje tekst ciągu z wartością tokenu JSON unescaped w źródle i zwraca wartość wskazującą, czy są one zgodne. |