Utf8JsonReader 構造体

定義

UTF-8 でエンコードされた JSON テキストに対する前方参照、読み取り専用のアクセスのための高パフォーマンスの API です。

public value class Utf8JsonReader
public struct Utf8JsonReader
type Utf8JsonReader = struct
Public Structure Utf8JsonReader
継承
Utf8JsonReader

注釈

Utf8JsonReader キャッシュを使用せずにテキストを順番に処理し、既定では JSON RFCに厳密に準拠します。

Utf8JsonReaderが無効な JSON を検出した場合は、行の JsonException 行番号やバイト位置などの基本的なエラー情報を使用してをスローします。

この型は ref 構造体であるため、非同期的には直接サポートされません。 ただし、不完全なデータを読み取って、さらに多くのデータが表示された場合は、再入によるサポートを提供します。

コメントの読み取り中またはスキップを許可するときに、最大の深さを設定できるようにするには、のインスタンスを作成 JsonReaderOptions してリーダーに渡します。

詳細については、「System.Text.Jsを使用して カスタムのシリアライザーとデシリアライザーを記述する方法」を参照してください。

コンストラクター

Utf8JsonReader(ReadOnlySequence<Byte>, Boolean, JsonReaderState)

UTF-8 でエンコードされたテキストの読み取り専用のシーケンスを処理する Utf8JsonReader 構造体の新しいインスタンスを初期化し、処理するすべてのテキストが入力に含まれるかどうかを示します。

Utf8JsonReader(ReadOnlySequence<Byte>, JsonReaderOptions)

指定したオプションを使用し、UTF-8 でエンコードされたテキストの読み取り専用シーケンスを処理する Utf8JsonReader 構造体の新しいインスタンスを初期化します。

Utf8JsonReader(ReadOnlySpan<Byte>, Boolean, JsonReaderState)

UTF-8 でエンコードされたテキストの読み取り専用のスパンを処理する Utf8JsonReader 構造体の新しいインスタンスを初期化し、処理するすべてのテキストが入力に含まれるかどうかを示します。

Utf8JsonReader(ReadOnlySpan<Byte>, JsonReaderOptions)

指定したオプションを使用し、UTF-8 でエンコードされたテキストの読み取り専用スパンを処理する Utf8JsonReader 構造体の新しいインスタンスを初期化します。

プロパティ

BytesConsumed

Utf8JsonReader のこのインスタンスでこれまで消費された合計バイト数を取得します。

CurrentDepth

現在のトークンの深度を取得します。

CurrentState

Utf8JsonReader コンストラクターにより多くのデータを渡すのに、Utf8JsonReader の現在の状態を取得します。

HasValueSequence

トークン値を取得するために使用する Value プロパティを示す値を取得します。

IsFinalBlock

すべての JSON データが与えられたか、あるいは他にもデータが入ってくるのかを示す Utf8JsonReader のこのインスタンスのモードを取得します。

Position

指定された UTF-8 でエンコードされた入力 ReadOnlySequence<byte> 内の現在の SequencePosition を取得します。Utf8JsonReader 構造体が ReadOnlySpan<byte> で構築されている場合は既定の SequencePosition を取得します。

TokenStartIndex

最後に処理された JSON トークンの (UTF-8 でエンコードされた指定の入力テキスト内の) 開始位置となるインデックスを取得します。空白はスキップされます。

TokenType

UTF-8 でエンコードされた JSON テキスト内で最後に処理された JSON トークンの種類を取得します。

ValueSequence

トークンが複数のセグメントに含まれている場合にのみ、最後に処理されたトークンの生の値を入力ペイロードの ReadOnlySequence<byte> スライスとして取得します。

ValueSpan

トークンが 1 つのセグメントに収まる場合、またはリーダーが ReadOnlySpan<byte> に含まれる JSON ペイロードを使用して構築された場合、最後に処理されたトークンの生の値を入力ペイロードの ReadOnlySpan<byte> スライスとして取得します。

メソッド

GetBoolean()

次の JSON トークン値をソースから Boolean として読み取ります。

GetByte()

現在の JSON トークン値をソースから Byte として解析します。

GetBytesFromBase64()

ソースから現在の JSON トークン値を解析し、Base64 でエンコードされた JSON 文字列をバイト配列としてデコードします。

GetComment()

ソースからの現在の JSON トークン値をコメントとして解析し、String としてトランスコードします。

GetDateTime()

次の JSON トークン値をソースから読み取り、それを DateTime に解析します。

GetDateTimeOffset()

次の JSON トークン値をソースから読み取り、それを DateTimeOffset に解析します。

GetDecimal()

次の JSON トークン値をソースから読み取り、それを Decimal に解析します。

GetDouble()

次の JSON トークン値をソースから読み取り、それを Double に解析します。

GetGuid()

次の JSON トークン値をソースから読み取り、それを Guid に解析します。

GetInt16()

現在の JSON トークン値をソースから Int16 として解析します。

GetInt32()

次の JSON トークン値をソースから読み取り、それを Int32 に解析します。

GetInt64()

次の JSON トークン値をソースから読み取り、それを Int64 に解析します。

GetSByte()

現在の JSON トークン値をソースから SByte として解析します。

GetSingle()

次の JSON トークン値をソースから読み取り、それを Single に解析します。

GetString()

次の JSON トークン値をソースから読み取り、エスケープ解除し、文字列としてトランスコードします。

GetUInt16()

現在の JSON トークン値をソースから UInt16 として解析します。

GetUInt32()

次の JSON トークン値をソースから読み取り、それを UInt32 に解析します。

GetUInt64()

次の JSON トークン値をソースから読み取り、それを UInt64 に解析します。

Read()

次の JSON トークンを入力ソースから読み取ります。

Skip()

現在の JSON トークンの子をスキップします。

TryGetByte(Byte)

ソースから現在の JSON トークン値を Byte として解析し、操作が成功したかどうかを示す値を返します。

TryGetBytesFromBase64(Byte[])

ソースから現在の JSON トークン値を解析し、Base64 でエンコードされた JSON 文字列をバイト配列としてデコードし、操作が成功したかどうかを示す値を返します。

TryGetDateTime(DateTime)

ソースから現在の JSON トークン値を DateTime として解析し、操作が成功したかどうかを示す値を返します。

TryGetDateTimeOffset(DateTimeOffset)

ソースから現在の JSON トークン値を DateTimeOffset として解析し、操作が成功したかどうかを示す値を返します。

TryGetDecimal(Decimal)

ソースから現在の JSON トークン値を Decimal として解析し、操作が成功したかどうかを示す値を返します。

TryGetDouble(Double)

ソースから現在の JSON トークン値を Double として解析し、操作が成功したかどうかを示す値を返します。

TryGetGuid(Guid)

ソースから現在の JSON トークン値を Guid として解析し、操作が成功したかどうかを示す値を返します。

TryGetInt16(Int16)

ソースから現在の JSON トークン値を Int16 として解析し、操作が成功したかどうかを示す値を返します。

TryGetInt32(Int32)

ソースから現在の JSON トークン値を Int32 として解析し、操作が成功したかどうかを示す値を返します。

TryGetInt64(Int64)

ソースから現在の JSON トークン値を Int64 として解析し、操作が成功したかどうかを示す値を返します。

TryGetSByte(SByte)

ソースから現在の JSON トークン値を SByte として解析し、操作が成功したかどうかを示す値を返します。

TryGetSingle(Single)

ソースから現在の JSON トークン値を Single として解析し、操作が成功したかどうかを示す値を返します。

TryGetUInt16(UInt16)

ソースから現在の JSON トークン値を UInt16 として解析し、操作が成功したかどうかを示す値を返します。

TryGetUInt32(UInt32)

ソースから現在の JSON トークン値を UInt32 として解析し、操作が成功したかどうかを示す値を返します。

TryGetUInt64(UInt64)

ソースから現在の JSON トークン値を UInt64 として解析し、操作が成功したかどうかを示す値を返します。

TrySkip()

現在の JSON トークンの子のスキップを試行します。

ValueTextEquals(ReadOnlySpan<Byte>)

読み取り専用バイト スパン内の UTF-8 でエンコードされたテキストをソース内のエスケープされていない JSON トークン値と比較し、一致するかどうかを示す値を返します。

ValueTextEquals(ReadOnlySpan<Char>)

読み取り専用文字スパン内のテキストをソース内のエスケープされていない JSON トークン値と比較し、一致するかどうかを示す値を返します。

ValueTextEquals(String)

文字列のテキストをソース内のエスケープされていない JSON トークン値と比較し、一致するかどうかを示す値を返します。

適用対象