Utf8JsonReader Yapı

Tanım

UTF-8 ile kodlanmış JSON metnine salt iletme, salt okunur erişim için yüksek performanslı bir API sağlar.

public value class Utf8JsonReader
public ref struct Utf8JsonReader
type Utf8JsonReader = struct
Public Structure Utf8JsonReader
Devralma
Utf8JsonReader

Açıklamalar

Utf8JsonReader , önbelleğe alma olmadan metni sırayla işler ve varsayılan olarak kesinlikle JSON RFC'ye bağlıdır.

Utf8JsonReader Geçersiz JSON ile karşılaştığında satır numarası ve satırdaki bayt konumu gibi temel hata bilgilerini içeren bir JsonException oluşturur.

Bu tür bir başvuru yapısı olduğundan, zaman uyumsuzluğu doğrudan desteklemez. Ancak, eksik verileri okumak ve daha fazla veri sunulduktan sonra okumaya devam etmek için yeniden giriş desteği sağlar.

Okuma sırasında maksimum derinlik ayarlayabilmek veya açıklamaları atlayabilmek için bir örneği JsonReaderOptions oluşturun ve okuyucuya geçirin.

Daha fazla bilgi için bkz. How to write custom serializers and deserializers with System.Text.Json.

Oluşturucular

Utf8JsonReader(ReadOnlySequence<Byte>, Boolean, JsonReaderState)

UTF-8 ile kodlanmış metnin salt okunur dizisini işleyen ve girişin işlenmek üzere tüm metni içerip içermediğini belirten yeni bir yapı örneği Utf8JsonReader başlatır.

Utf8JsonReader(ReadOnlySequence<Byte>, JsonReaderOptions)

Belirtilen seçenekleri kullanarak UTF-8 kodlanmış metnin salt okunur dizisini işleyen yapının yeni bir örneğini Utf8JsonReader başlatır.

Utf8JsonReader(ReadOnlySpan<Byte>, Boolean, JsonReaderState)

UTF-8 kodlanmış metnin salt okunur bir aralığını işleyen ve girişin işlenmek üzere tüm metni içerip içermediğini belirten yeni bir yapı örneğini Utf8JsonReader başlatır.

Utf8JsonReader(ReadOnlySpan<Byte>, JsonReaderOptions)

Belirtilen seçenekleri kullanarak UTF-8 kodlanmış metnin salt okunur bir aralığını işleyen yapının yeni bir örneğini Utf8JsonReader başlatır.

Özellikler

BytesConsumed

bu örneği Utf8JsonReadertarafından şu ana kadar tüketilen toplam bayt sayısını alır.

CurrentDepth

Geçerli belirtecin derinliğini alır.

CurrentState

Daha fazla veri içeren bir Utf8JsonReader oluşturucuya geçirmek için geçerli Utf8JsonReader durumu alır.

HasValueSequence

Belirteç değerini almak için hangi Value özelliğinin kullanılacağını belirten bir değer alır.

IsFinalBlock

Tüm JSON verilerinin sağlanıp sağlanmadığını Utf8JsonReader veya daha fazla verinin sağlanıp sağlanmadığını gösteren bu örneğin modunu alır.

Position

Sağlanan UTF-8 ile kodlanmış ReadOnlySequence<bayt> veya yapı ReadOnlySpan<bayt> ile oluşturulduysa varsayılan SequencePosition giriş içindeki geçerli SequencePosition değeri Utf8JsonReader alır.

TokenStartIndex

Son işlenen JSON belirtecinin başladığı dizini alır (verilen UTF-8 kodlanmış giriş metni içinde), herhangi bir boşluğu atlar.

TokenType

UTF-8 ile kodlanmış JSON metninde işlenen son JSON belirtecinin türünü alır.

ValueIsEscaped

Geçerli ValueSpan veya ValueSequence özelliklerin RFC 8259 bölüm 7'ye göre kaçış dizileri içerip içermediğini belirten bir değer alır ve bu nedenle kullanılmadan önce kapsülsüzlük gerektirir.

ValueSequence

Yalnızca belirteç birden çok segment içinde yer alıyorsa, giriş yükünün ReadOnlySequence<bayt> dilimi olarak işlenen son belirtecin ham değerini alır.

ValueSpan

Belirteç tek bir segmente sığıyorsa veya okuyucu ReadOnlySpan<baytında yer alan bir JSON yüküyle oluşturulduysa, giriş yükünün ReadOnlySpan bayt>> dilimi olarak işlenen son belirtecin<ham değerini alır.

Yöntemler

CopyString(Span<Byte>)

Geçerli JSON belirteci değerini kaynaktan utf-8 dizesi olarak olmayan hedef arabelleğe kopyalar.

CopyString(Span<Char>)

Geçerli JSON belirteci değerini kaynaktan kopyalar, çıkışsız ve UTF-16 karakter arabelleği olarak kodlanır.

GetBoolean()

Kaynaktan bir sonraki JSON belirteci değerini olarak Booleanokur.

GetByte()

Geçerli JSON belirteci değerini kaynaktan olarak ayrıştırıyor Byte.

GetBytesFromBase64()

Geçerli JSON belirteci değerini kaynaktan ayrıştırarak Base64 kodlanmış JSON dizesini bayt dizisi olarak çözer.

GetComment()

Geçerli JSON belirteci değerini kaynaktan açıklama olarak ayrıştırıp olarak kodlar String.

GetDateTime()

Bir sonraki JSON belirteci değerini kaynaktan okur ve bir DateTimeolarak ayrıştırıyor.

GetDateTimeOffset()

Bir sonraki JSON belirteci değerini kaynaktan okur ve bir DateTimeOffsetolarak ayrıştırıyor.

GetDecimal()

Kaynaktan sonraki JSON belirteci değerini okur ve bir Decimalolarak ayrıştırıyor.

GetDouble()

Kaynaktan sonraki JSON belirteci değerini okur ve bir Doubleolarak ayrıştırıyor.

GetGuid()

Kaynaktan sonraki JSON belirteci değerini okur ve bir Guidolarak ayrıştırıyor.

GetInt16()

Geçerli JSON belirteci değerini kaynaktan olarak ayrıştırıyor Int16.

GetInt32()

Kaynaktan sonraki JSON belirteci değerini okur ve bir Int32olarak ayrıştırıyor.

GetInt64()

Kaynaktan sonraki JSON belirteci değerini okur ve bir Int64olarak ayrıştırıyor.

GetSByte()

Geçerli JSON belirteci değerini kaynaktan olarak ayrıştırıyor SByte.

GetSingle()

Kaynaktan sonraki JSON belirteci değerini okur ve bir Singleolarak ayrıştırıyor.

GetString()

Kaynaktan sonraki JSON belirteci değerini okur, sıralanmamış ve dize olarak kodlanmış.

GetUInt16()

Geçerli JSON belirteci değerini kaynaktan olarak ayrıştırıyor UInt16.

GetUInt32()

Kaynaktan sonraki JSON belirteci değerini okur ve bir UInt32olarak ayrıştırıyor.

GetUInt64()

Kaynaktan sonraki JSON belirteci değerini okur ve bir UInt64olarak ayrıştırıyor.

Read()

Giriş kaynağından sonraki JSON belirtecini okur.

Skip()

Geçerli JSON belirtecinin alt öğelerini atlar.

TryGetByte(Byte)

Geçerli JSON belirteci değerini kaynaktan olarak Byte ayrıştırmaya çalışır ve işlemin başarılı olup olmadığını gösteren bir değer döndürür.

TryGetBytesFromBase64(Byte[])

Geçerli JSON belirteci değerini kaynaktan ayrıştırmaya çalışır ve Base64 kodlanmış JSON dizesini bayt dizisi olarak çözer ve işlemin başarılı olup olmadığını belirten bir değer döndürür.

TryGetDateTime(DateTime)

Geçerli JSON belirteci değerini kaynaktan olarak DateTime ayrıştırmaya çalışır ve işlemin başarılı olup olmadığını gösteren bir değer döndürür.

TryGetDateTimeOffset(DateTimeOffset)

Geçerli JSON belirteci değerini kaynaktan olarak DateTimeOffset ayrıştırmaya çalışır ve işlemin başarılı olup olmadığını gösteren bir değer döndürür.

TryGetDecimal(Decimal)

Geçerli JSON belirteci değerini kaynaktan olarak Decimal ayrıştırmaya çalışır ve işlemin başarılı olup olmadığını gösteren bir değer döndürür.

TryGetDouble(Double)

Geçerli JSON belirteci değerini kaynaktan olarak Double ayrıştırmaya çalışır ve işlemin başarılı olup olmadığını gösteren bir değer döndürür.

TryGetGuid(Guid)

Geçerli JSON belirteci değerini kaynaktan olarak Guid ayrıştırmaya çalışır ve işlemin başarılı olup olmadığını gösteren bir değer döndürür.

TryGetInt16(Int16)

Geçerli JSON belirteci değerini kaynaktan olarak Int16 ayrıştırmaya çalışır ve işlemin başarılı olup olmadığını gösteren bir değer döndürür.

TryGetInt32(Int32)

Geçerli JSON belirteci değerini kaynaktan olarak Int32 ayrıştırmaya çalışır ve işlemin başarılı olup olmadığını gösteren bir değer döndürür.

TryGetInt64(Int64)

Geçerli JSON belirteci değerini kaynaktan olarak Int64 ayrıştırmaya çalışır ve işlemin başarılı olup olmadığını gösteren bir değer döndürür.

TryGetSByte(SByte)

Geçerli JSON belirteci değerini kaynaktan olarak SByte ayrıştırmaya çalışır ve işlemin başarılı olup olmadığını gösteren bir değer döndürür.

TryGetSingle(Single)

Geçerli JSON belirteci değerini kaynaktan olarak Single ayrıştırmaya çalışır ve işlemin başarılı olup olmadığını gösteren bir değer döndürür.

TryGetUInt16(UInt16)

Geçerli JSON belirteci değerini kaynaktan olarak UInt16 ayrıştırmaya çalışır ve işlemin başarılı olup olmadığını gösteren bir değer döndürür.

TryGetUInt32(UInt32)

Geçerli JSON belirteci değerini kaynaktan olarak UInt32 ayrıştırmaya çalışır ve işlemin başarılı olup olmadığını gösteren bir değer döndürür.

TryGetUInt64(UInt64)

Geçerli JSON belirteci değerini kaynaktan olarak UInt64 ayrıştırmaya çalışır ve işlemin başarılı olup olmadığını gösteren bir değer döndürür.

TrySkip()

Geçerli JSON belirtecinin alt öğelerini atlamaya çalışır.

ValueTextEquals(ReadOnlySpan<Byte>)

Salt okunur bayt aralığındaki UTF-8 kodlanmış metnini kaynaktaki ayarlanmamış JSON belirteci değeriyle karşılaştırır ve eşleşip eşleşmediğini belirten bir değer döndürür.

ValueTextEquals(ReadOnlySpan<Char>)

Salt okunur karakter aralığındaki metni kaynaktaki ayrılmış JSON belirteci değeriyle karşılaştırır ve eşleşip eşleşmediğini belirten bir değer döndürür.

ValueTextEquals(String)

Dize metnini kaynaktaki ayrılmış JSON belirteci değeriyle karşılaştırır ve eşleşip eşleşmediğini belirten bir değer döndürür.

Şunlara uygulanır