Utf8JsonReader Struktura

Definice

Poskytuje vysoce výkonné rozhraní API pro přístup jen pro čtení k textu JSON s kódováním UTF-8.

public value class Utf8JsonReader
public ref struct Utf8JsonReader
type Utf8JsonReader = struct
Public Structure Utf8JsonReader
Dědičnost
Utf8JsonReader

Poznámky

Utf8JsonReader zpracovává text postupně bez ukládání do mezipaměti a ve výchozím nastavení se striktně řídí dokumentEM RFC JSON.

Pokud Utf8JsonReader dojde k neplatnému formátu JSON, vyvolá základní JsonException informace o chybě, jako je číslo řádku a pozice bajtu na řádku.

Vzhledem k tomu, že tento typ je referenční strukturou, nepodporuje přímo asynchronní. Poskytuje však podporu pro opakované čtení neúplných dat a další čtení dat, jakmile se zobrazí více dat.

Abyste mohli nastavit maximální hloubku při čtení nebo povolit přeskočení komentářů, vytvořte instanci JsonReaderOptions a předejte ji čtenáři.

Další informace naleznete v tématu Jak psát vlastní serializátory a deserializátory pomocí System.Text.Json.

Konstruktory

Utf8JsonReader(ReadOnlySequence<Byte>, Boolean, JsonReaderState)

Inicializuje novou instanci Utf8JsonReader struktury, která zpracovává posloupnost kódování UTF-8 jen pro čtení a označuje, zda vstup obsahuje veškerý text ke zpracování.

Utf8JsonReader(ReadOnlySequence<Byte>, JsonReaderOptions)

Inicializuje novou instanci Utf8JsonReader struktury, která zpracovává posloupnost kódování UTF-8 jen pro čtení pomocí zadaných možností.

Utf8JsonReader(ReadOnlySpan<Byte>, Boolean, JsonReaderState)

Inicializuje novou instanci Utf8JsonReader struktury, která zpracovává rozsah kódování UTF-8 jen pro čtení a označuje, zda vstup obsahuje veškerý text, který se má zpracovat.

Utf8JsonReader(ReadOnlySpan<Byte>, JsonReaderOptions)

Inicializuje novou instanci Utf8JsonReader struktury, která zpracovává rozsah kódování UTF-8 jen pro čtení pomocí zadaných možností.

Vlastnosti

BytesConsumed

Získá celkový počet bajtů spotřebovaných dosud v této instanci Utf8JsonReader.

CurrentDepth

Získá hloubku aktuálního tokenu.

CurrentState

Získá aktuální Utf8JsonReader stav pro předání konstruktoru Utf8JsonReader s více daty.

HasValueSequence

Získá hodnotu, která označuje, kterou vlastnost Value použít k získání hodnoty tokenu.

IsFinalBlock

Získá režim této instance Utf8JsonReader , která označuje, zda byla všechna data JSON poskytnuta nebo zda se mají přijít další data.

Position

Získá aktuální SequencePosition v zadané UTF-8 zakódovaný vstup ReadOnlySequence<bajt> nebo výchozí SequencePosition , pokud Utf8JsonReader byla struktura vytvořena pomocí readOnlySpan<bajt>.

TokenStartIndex

Získá index, na který začíná poslední zpracovaný token JSON (v daném vstupním textu kódování UTF-8), přeskočí libovolné prázdné místo.

TokenType

Získá typ naposledy zpracovaného tokenu JSON v textu JSON s kódováním UTF-8.

ValueIsEscaped

Získá hodnotu, která označuje, zda aktuální ValueSpan nebo ValueSequence vlastnosti obsahují řídicí sekvence na RFC 8259 oddíl 7, a proto vyžadují zrušení zapouzdření před spotřebováním.

ValueSequence

Získá nezpracovanou hodnotu posledního zpracovaného tokenu jako řez bajtu> ReadOnlySequence<vstupní datové části, pouze pokud je token obsažen v několika segmentech.

ValueSpan

Získá nezpracovanou hodnotu posledního zpracovaného tokenu jako řez bajtu ReadOnlySpan<vstupní datové části, pokud se token vejde do jednoho segmentu nebo pokud byl čtenář vytvořen datovou částí JSON obsaženou v bajte> ReadOnlySpan<.>

Metody

CopyString(Span<Byte>)

Zkopíruje aktuální hodnotu tokenu JSON ze zdroje, která se nenastaví jako řetězec UTF-8 do cílové vyrovnávací paměti.

CopyString(Span<Char>)

Zkopíruje aktuální hodnotu tokenu JSON ze zdroje, nepřekódované a transkódované jako vyrovnávací paměť znaků UTF-16.

GetBoolean()

Přečte další hodnotu tokenu JSON ze zdroje jako Boolean.

GetByte()

Parsuje aktuální hodnotu tokenu JSON ze zdroje jako Byte.

GetBytesFromBase64()

Parsuje aktuální hodnotu tokenu JSON ze zdroje a dekóduje řetězec JSON kódovaný v Base64 jako pole bajtů.

GetComment()

Parsuje aktuální hodnotu tokenu JSON ze zdroje jako komentář, překóduje ji jako String.

GetDateTime()

Načte další hodnotu tokenu JSON ze zdroje a parsuje ji do DateTime.

GetDateTimeOffset()

Načte další hodnotu tokenu JSON ze zdroje a parsuje ji do DateTimeOffset.

GetDecimal()

Přečte další hodnotu tokenu JSON ze zdroje a parsuje ji na Decimal.

GetDouble()

Přečte další hodnotu tokenu JSON ze zdroje a parsuje ji na Double.

GetGuid()

Přečte další hodnotu tokenu JSON ze zdroje a parsuje ji na Guid.

GetInt16()

Parsuje aktuální hodnotu tokenu JSON ze zdroje jako Int16.

GetInt32()

Načte další hodnotu tokenu JSON ze zdroje a parsuje ji do objektu Int32.

GetInt64()

Načte další hodnotu tokenu JSON ze zdroje a parsuje ji do objektu Int64.

GetSByte()

Parsuje aktuální hodnotu tokenu JSON ze zdroje jako objektu SByte.

GetSingle()

Přečte další hodnotu tokenu JSON ze zdroje a parsuje ji na Single.

GetString()

Přečte další hodnotu tokenu JSON ze zdroje, nepřekódované a transkódované jako řetězec.

GetUInt16()

Parsuje aktuální hodnotu tokenu JSON ze zdroje jako UInt16.

GetUInt32()

Přečte další hodnotu tokenu JSON ze zdroje a parsuje ji na UInt32.

GetUInt64()

Přečte další hodnotu tokenu JSON ze zdroje a parsuje ji na UInt64.

Read()

Přečte další token JSON ze vstupního zdroje.

Skip()

Přeskočí podřízené položky aktuálního tokenu JSON.

TryGetByte(Byte)

Pokusí se parsovat aktuální hodnotu tokenu JSON ze zdroje jako Byte hodnotu a vrátí hodnotu, která označuje, jestli operace proběhla úspěšně.

TryGetBytesFromBase64(Byte[])

Pokusí se parsovat aktuální hodnotu tokenu JSON ze zdroje a dekóduje řetězec JSON kódovaného base64 jako pole bajtů a vrátí hodnotu, která označuje, zda operace proběhla úspěšně.

TryGetDateTime(DateTime)

Pokusí se parsovat aktuální hodnotu tokenu JSON ze zdroje jako DateTime hodnotu a vrátí hodnotu, která označuje, jestli operace proběhla úspěšně.

TryGetDateTimeOffset(DateTimeOffset)

Pokusí se parsovat aktuální hodnotu tokenu JSON ze zdroje jako DateTimeOffset hodnotu a vrátí hodnotu, která označuje, jestli operace proběhla úspěšně.

TryGetDecimal(Decimal)

Pokusí se parsovat aktuální hodnotu tokenu JSON ze zdroje jako Decimal hodnotu a vrátí hodnotu, která označuje, jestli operace proběhla úspěšně.

TryGetDouble(Double)

Pokusí se parsovat aktuální hodnotu tokenu JSON ze zdroje jako Double hodnotu a vrátí hodnotu, která označuje, jestli operace proběhla úspěšně.

TryGetGuid(Guid)

Pokusí se parsovat aktuální hodnotu tokenu JSON ze zdroje jako Guid hodnotu a vrátí hodnotu, která označuje, jestli operace proběhla úspěšně.

TryGetInt16(Int16)

Pokusí se parsovat aktuální hodnotu tokenu JSON ze zdroje jako Int16 hodnotu a vrátí hodnotu, která označuje, jestli operace proběhla úspěšně.

TryGetInt32(Int32)

Pokusí se parsovat aktuální hodnotu tokenu JSON ze zdroje jako Int32 hodnotu a vrátí hodnotu, která označuje, jestli operace proběhla úspěšně.

TryGetInt64(Int64)

Pokusí se parsovat aktuální hodnotu tokenu JSON ze zdroje jako Int64 hodnotu a vrátí hodnotu, která označuje, jestli operace proběhla úspěšně.

TryGetSByte(SByte)

Pokusí se parsovat aktuální hodnotu tokenu JSON ze zdroje jako SByte hodnotu a vrátí hodnotu, která označuje, jestli operace proběhla úspěšně.

TryGetSingle(Single)

Pokusí se parsovat aktuální hodnotu tokenu JSON ze zdroje jako Single hodnotu a vrátí hodnotu, která označuje, jestli operace proběhla úspěšně.

TryGetUInt16(UInt16)

Pokusí se parsovat aktuální hodnotu tokenu JSON ze zdroje jako UInt16 hodnotu a vrátí hodnotu, která označuje, jestli operace proběhla úspěšně.

TryGetUInt32(UInt32)

Pokusí se parsovat aktuální hodnotu tokenu JSON ze zdroje jako UInt32 hodnotu a vrátí hodnotu, která označuje, jestli operace proběhla úspěšně.

TryGetUInt64(UInt64)

Pokusí se parsovat aktuální hodnotu tokenu JSON ze zdroje jako UInt64 hodnotu a vrátí hodnotu, která označuje, jestli operace proběhla úspěšně.

TrySkip()

Pokusí se přeskočit podřízené položky aktuálního tokenu JSON.

ValueTextEquals(ReadOnlySpan<Byte>)

Porovná text s kódováním UTF-8 v bajtovém rozsahu jen pro čtení s hodnotou tokenu JSON, která je ve zdroji neuskutečněná, a vrátí hodnotu, která označuje, jestli odpovídají.

ValueTextEquals(ReadOnlySpan<Char>)

Porovná text v rozsahu znaků jen pro čtení s hodnotou tokenu JSON, která není ve zdroji, a vrátí hodnotu, která označuje, jestli odpovídají.

ValueTextEquals(String)

Porovná text řetězce s neskutečnou hodnotou tokenu JSON ve zdroji a vrátí hodnotu, která označuje, jestli odpovídají.

Platí pro