Utf8JsonWriter クラス

定義

UTF-8 でエンコードされた JSON テキストの前方参照、非キャッシュの書き込みのために、高パフォーマンスの API を提供します。

public ref class Utf8JsonWriter sealed : IAsyncDisposable, IDisposable
public sealed class Utf8JsonWriter : IAsyncDisposable, IDisposable
type Utf8JsonWriter = class
    interface IAsyncDisposable
    interface IDisposable
Public NotInheritable Class Utf8JsonWriter
Implements IAsyncDisposable, IDisposable
継承
Utf8JsonWriter
実装

注釈

Utf8JsonWriter は、キャッシュなしでテキストを順番に書き込みます。既定では、コメントの書き込みを除き、 JSON RFC に準拠します。

検証が有効になっているときに無効な JSON を書き込もうとするメソッドは、コンテキスト固有のエラー メッセージを含む を InvalidOperationException スローします。

インデントと空白で出力を書式設定したり、検証をスキップしたり、エスケープ動作をカスタマイズしたりできるようにするには、 の JsonWriterOptions インスタンスを作成してライターに渡します。

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

コンストラクター

Utf8JsonWriter(IBufferWriter<Byte>, JsonWriterOptions)

出力の書き込み先に指定された IBufferWriter<T> とカスタマイズ オプションを使用して、Utf8JsonWriter クラスの新しいインスタンスを初期化します。

Utf8JsonWriter(Stream, JsonWriterOptions)

出力の書き込み先に指定されたストリームとカスタマイズ オプションを使用して、Utf8JsonWriter クラスの新しいインスタンスを初期化します。

プロパティ

BytesCommitted

現在のインスタンスによってこれまで出力にコミットされた合計バイト数を取得します。

BytesPending

これまでに Utf8JsonWriter によって書き込まれたバイト数のうち、まだ出力にフラッシュされてコミットされていないバイト数を取得します。

CurrentDepth

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

Options

このインスタンスを使用して JSON を書き込む際のカスタム動作を取得します。これによって、書き込み中に出力をフォーマットするかどうか、JSON の構造検証をスキップするかどうか、およびエスケープする文字が示されます。

メソッド

Dispose()

まだフラッシュされていない残りの JSON テキストがあればそれをコミットし、現在のインスタンスによって使用されているすべてのリソースを解放します。

DisposeAsync()

まだフラッシュされていない残りの JSON テキストがあればそれを非同期的にコミットし、現在のインスタンスによって使用されているすべてのリソースを解放します。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
Flush()

これまでに書き込まれた JSON テキストをコミットします。これにより出力先で表示できるようになります。

FlushAsync(CancellationToken)

これまでに書き込まれた JSON テキストを非同期的にコミットします。これにより出力先で表示できるようになります。

GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
Reset()

このインスタンスの内部状態をリセットして、それを再利用できるようにします。

Reset(IBufferWriter<Byte>)

このインスタンスの内部状態をリセットして、IBufferWriter<T> の新しいインスタンスで再利用できるようにします。

Reset(Stream)

このインスタンスの内部状態をリセットして、Stream の新しいインスタンスで再利用できるようにします。

ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)
WriteBase64String(JsonEncodedText, ReadOnlySpan<Byte>)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と生バイト値 (Base64 でエンコードされた JSON 文字列) を書き込みます。

WriteBase64String(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>)

JSON オブジェクトの名前/値ペアの一部として、プロパティ名と生バイト値 (Base64 でエンコードされた JSON 文字列) を書き込みます。

WriteBase64String(ReadOnlySpan<Char>, ReadOnlySpan<Byte>)

JSON オブジェクトの名前/値ペアの一部として、プロパティ名と生バイト値 (Base64 でエンコードされた JSON 文字列) を書き込みます。

WriteBase64String(String, ReadOnlySpan<Byte>)

JSON オブジェクトの名前/値ペアの一部として、プロパティ名と生バイト値 (Base64 でエンコードされた JSON 文字列) を書き込みます。

WriteBase64StringValue(ReadOnlySpan<Byte>)

JSON 配列の要素として、Base64 でエンコードされた JSON 文字列として生バイト値を書き込みます。

WriteBoolean(JsonEncodedText, Boolean)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と Boolean 値 (JSON リテラル true または false) を書き込みます。

WriteBoolean(ReadOnlySpan<Byte>, Boolean)

バイト型の読み取り専用スパンとして指定されたプロパティ名と、Boolean 値 (JSON リテラルの true または false として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteBoolean(ReadOnlySpan<Char>, Boolean)

読み取り専用の文字範囲として指定されたプロパティ名と、Boolean 値 (JSON リテラルの true または false として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteBoolean(String, Boolean)

文字列として指定されたプロパティ名と、Boolean 値 (JSON リテラルの true または false として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteBooleanValue(Boolean)

JSON 配列の要素として、Boolean 値 (JSON リテラル true または false として) を書き込みます。

WriteCommentValue(ReadOnlySpan<Byte>)

UTF-8 テキスト値を JSON コメントとして書き込みます。

WriteCommentValue(ReadOnlySpan<Char>)

UTF-16 テキスト値を JSON コメントとして書き込みます。

WriteCommentValue(String)

文字列テキスト値を JSON コメントとして書き込みます。

WriteEndArray()

JSON 配列の終了を書き込みます。

WriteEndObject()

JSON オブジェクトの終了を書き込みます。

WriteNull(JsonEncodedText)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と JSON リテラル null を書き込みます。

WriteNull(ReadOnlySpan<Byte>)

バイト型の読み取り専用スパンとして指定されたプロパティ名と、JSON リテラルの null を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNull(ReadOnlySpan<Char>)

読み取り専用の文字範囲として指定されたプロパティ名と、JSON リテラルの null を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNull(String)

文字列として指定されたプロパティ名と、JSON リテラルの null を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNullValue()

JSON 配列の要素として、JSON リテラル null を書き込みます。

WriteNumber(JsonEncodedText, Decimal)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と Decimal 値 (JSON 番号) を書き込みます。

WriteNumber(JsonEncodedText, Double)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と Double 値 (JSON 番号) を書き込みます。

WriteNumber(JsonEncodedText, Int32)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と Int32 値 (JSON 番号) を書き込みます。

WriteNumber(JsonEncodedText, Int64)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と Int64 値 (JSON 番号) を書き込みます。

WriteNumber(JsonEncodedText, Single)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と Single 値 (JSON 番号) を書き込みます。

WriteNumber(JsonEncodedText, UInt32)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と UInt32 値 (JSON 番号) を書き込みます。

WriteNumber(JsonEncodedText, UInt64)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と UInt64 値 (JSON 番号) を書き込みます。

WriteNumber(ReadOnlySpan<Byte>, Decimal)

バイト型の読み取り専用スパンとして指定されたプロパティ名と、Decimal 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(ReadOnlySpan<Byte>, Double)

バイト型の読み取り専用スパンとして指定されたプロパティ名と、Double 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(ReadOnlySpan<Byte>, Int32)

バイト型の読み取り専用スパンとして指定されたプロパティ名と、Int32 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(ReadOnlySpan<Byte>, Int64)

バイト型の読み取り専用スパンとして指定されたプロパティ名と、Int64 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(ReadOnlySpan<Byte>, Single)

バイト型の読み取り専用スパンとして指定されたプロパティ名と、Single 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(ReadOnlySpan<Byte>, UInt32)

バイト型の読み取り専用スパンとして指定されたプロパティ名と、UInt32 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(ReadOnlySpan<Byte>, UInt64)

バイト型の読み取り専用スパンとして指定されたプロパティ名と、UInt64 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(ReadOnlySpan<Char>, Decimal)

読み取り専用の文字範囲として指定されたプロパティ名と、Decimal 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(ReadOnlySpan<Char>, Double)

読み取り専用の文字範囲として指定されたプロパティ名と、Double 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(ReadOnlySpan<Char>, Int32)

読み取り専用の文字範囲として指定されたプロパティ名と、Int32 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(ReadOnlySpan<Char>, Int64)

読み取り専用の文字範囲として指定されたプロパティ名と、Int64 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(ReadOnlySpan<Char>, Single)

読み取り専用の文字範囲として指定されたプロパティ名と、Single 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(ReadOnlySpan<Char>, UInt32)

読み取り専用の文字範囲として指定されたプロパティ名と、UInt32 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(ReadOnlySpan<Char>, UInt64)

読み取り専用の文字範囲として指定されたプロパティ名と、UInt64 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(String, Decimal)

文字列として指定されたプロパティ名と、Decimal 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(String, Double)

文字列として指定されたプロパティ名と、Double 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(String, Int32)

文字列として指定されたプロパティ名と、Int32 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(String, Int64)

文字列として指定されたプロパティ名と、Int64 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(String, Single)

文字列として指定されたプロパティ名と、Single 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(String, UInt32)

文字列として指定されたプロパティ名と、UInt32 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumber(String, UInt64)

文字列として指定されたプロパティ名と、UInt64 値 (JSON 数値として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteNumberValue(Decimal)

JSON 配列の要素として、Decimal 値 (JSON 数値として) を書き込みます。

WriteNumberValue(Double)

JSON 配列の要素として、Double 値 (JSON 数値として) を書き込みます。

WriteNumberValue(Int32)

JSON 配列の要素として、Int32 値 (JSON 数値として) を書き込みます。

WriteNumberValue(Int64)

JSON 配列の要素として、Int64 値 (JSON 数値として) を書き込みます。

WriteNumberValue(Single)

JSON 配列の要素として、Single 値 (JSON 数値として) を書き込みます。

WriteNumberValue(UInt32)

JSON 配列の要素として、UInt32 値 (JSON 数値として) を書き込みます。

WriteNumberValue(UInt64)

JSON 配列の要素として、UInt64 値 (JSON 数値として) を書き込みます。

WritePropertyName(JsonEncodedText)

JSON オブジェクトの名前/値ペアの最初の部分として、事前にエンコードされたプロパティ名 (JSON 文字列) を書き込みます。

WritePropertyName(ReadOnlySpan<Byte>)

JSON オブジェクトの名前/値ペアの最初の部分として、UTF-8 プロパティ名 (JSON 文字列) を書き込みます。

WritePropertyName(ReadOnlySpan<Char>)

JSON オブジェクトの名前/値ペアの最初の部分として、プロパティ名 (JSON 文字列) を書き込みます。

WritePropertyName(String)

JSON オブジェクトの名前/値ペアの最初の部分として、プロパティ名 (JSON 文字列) を書き込みます。

WriteRawValue(ReadOnlySequence<Byte>, Boolean)

入力を JSON コンテンツとして書き込みます。 入力コンテンツが 1 つの完全な JSON 値であることが予想されます。

WriteRawValue(ReadOnlySpan<Byte>, Boolean)

入力を JSON コンテンツとして書き込みます。 入力コンテンツが 1 つの完全な JSON 値であることが予想されます。

WriteRawValue(ReadOnlySpan<Char>, Boolean)

入力を JSON コンテンツとして書き込みます。 入力コンテンツが 1 つの完全な JSON 値であることが予想されます。

WriteRawValue(String, Boolean)

入力を JSON コンテンツとして書き込みます。 入力コンテンツが 1 つの完全な JSON 値であることが予想されます。

WriteStartArray()

JSON 配列の先頭を書き込みます。

WriteStartArray(JsonEncodedText)

JSON 配列の先頭を、事前にエンコードされたプロパティ名をキーとして書き込みます。

WriteStartArray(ReadOnlySpan<Byte>)

バイト型の読み取り専用スパンとして指定されたプロパティ名を含む JSON 配列の先頭をキーとして書き込みます。

WriteStartArray(ReadOnlySpan<Char>)

読み取り専用の文字範囲として指定されたプロパティ名を含む JSON 配列の先頭をキーとして書き込みます。

WriteStartArray(String)

文字列として指定されたプロパティ名を含む JSON 配列の先頭をキーとして書き込みます。

WriteStartObject()

JSON オブジェクトの先頭を書き込みます。

WriteStartObject(JsonEncodedText)

JSON オブジェクトの先頭を、事前にエンコードされたプロパティ名をキーとして書き込みます。

WriteStartObject(ReadOnlySpan<Byte>)

バイト型の読み取り専用スパンとして指定されたプロパティ名を含む JSON オブジェクトの先頭をキーとして書き込みます。

WriteStartObject(ReadOnlySpan<Char>)

JSON オブジェクトの先頭を、読み取り専用の文字スパンとしてキーとして指定されたプロパティ名で書き込みます。

WriteStartObject(String)

文字列として指定されたプロパティ名を含む JSON オブジェクトの先頭をキーとして書き込みます。

WriteString(JsonEncodedText, DateTime)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と DateTime 値 (JSON 文字列) を書き込みます。

WriteString(JsonEncodedText, DateTimeOffset)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と DateTimeOffset 値 (JSON 文字列) を書き込みます。

WriteString(JsonEncodedText, Guid)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と Guid 値 (JSON 文字列) を書き込みます。

WriteString(JsonEncodedText, JsonEncodedText)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と事前にエンコードされた値 (JSON 文字列) を書き込みます。

WriteString(JsonEncodedText, ReadOnlySpan<Byte>)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と UTF-8 テキスト値 (JSON 文字列) を書き込みます。

WriteString(JsonEncodedText, ReadOnlySpan<Char>)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名とテキスト値 (JSON 文字列) を書き込みます。

WriteString(JsonEncodedText, String)

JSON オブジェクトの名前/値ペアの一部として、事前にエンコードされたプロパティ名と文字列テキスト値 (JSON 文字列) を書き込みます。

WriteString(ReadOnlySpan<Byte>, DateTime)

JSON オブジェクトの名前/値ペアの一部として、UTF-8 プロパティ名と DateTime 値 (JSON 文字列として) を書き込みます。

WriteString(ReadOnlySpan<Byte>, DateTimeOffset)

JSON オブジェクトの名前/値ペアの一部として、UTF-8 プロパティ名と DateTimeOffset 値 (JSON 文字列として) を書き込みます。

WriteString(ReadOnlySpan<Byte>, Guid)

JSON オブジェクトの名前/値ペアの一部として、UTF-8 プロパティ名と Guid 値 (JSON 文字列として) を書き込みます。

WriteString(ReadOnlySpan<Byte>, JsonEncodedText)

JSON オブジェクトの名前/値ペアの一部として、UTF-8 プロパティ名と事前にエンコードされた値 (JSON 文字列) を書き込みます。

WriteString(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>)

JSON オブジェクトの名前/値ペアの一部として、UTF-8 プロパティ名と UTF-8 テキスト値 (JSON 文字列として) を書き込みます。

WriteString(ReadOnlySpan<Byte>, ReadOnlySpan<Char>)

JSON オブジェクトの名前/値ペアの一部として、UTF-8 プロパティ名と UTF-16 テキスト値 (JSON 文字列として) を書き込みます。

WriteString(ReadOnlySpan<Byte>, String)

JSON オブジェクトの名前/値ペアの一部として、UTF-8 プロパティ名と文字列テキスト値 (JSON 文字列として) を書き込みます。

WriteString(ReadOnlySpan<Char>, DateTime)

読み取り専用の文字範囲として指定されたプロパティ名と、DateTime 値 (JSON 文字列として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteString(ReadOnlySpan<Char>, DateTimeOffset)

読み取り専用の文字範囲として指定されたプロパティ名と、DateTimeOffset 値 (JSON 文字列として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteString(ReadOnlySpan<Char>, Guid)

読み取り専用の文字範囲として指定されたプロパティ名と、Guid 値 (JSON 文字列として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteString(ReadOnlySpan<Char>, JsonEncodedText)

JSON オブジェクトの名前/値ペアの一部として、プロパティ名と事前にエンコードされた値 (JSON 文字列) を書き込みます。

WriteString(ReadOnlySpan<Char>, ReadOnlySpan<Byte>)

JSON オブジェクトの名前/値ペアの一部として、UTF-16 プロパティ名と UTF-8 テキスト値 (JSON 文字列として) を書き込みます。

WriteString(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

JSON オブジェクトの名前/値ペアの一部として、UTF-16 プロパティ名と UTF-16 テキスト値 (JSON 文字列として) を書き込みます。

WriteString(ReadOnlySpan<Char>, String)

JSON オブジェクトの名前/値ペアの一部として、UTF-16 プロパティ名と文字列テキスト値 (JSON 文字列として) を書き込みます。

WriteString(String, DateTime)

文字列として指定されたプロパティ名と、DateTime 値 (JSON 文字列として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteString(String, DateTimeOffset)

文字列として指定されたプロパティ名と、DateTimeOffset 値 (JSON 文字列として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteString(String, Guid)

文字列として指定されたプロパティ名と、Guid 値 (JSON 文字列として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteString(String, JsonEncodedText)

JSON オブジェクトの名前/値ペアの一部として、プロパティ名と事前にエンコードされた値 (JSON 文字列) を書き込みます。

WriteString(String, ReadOnlySpan<Byte>)

文字列として指定されたプロパティ名と、UTF-8 テキスト値 (JSON 文字列として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteString(String, ReadOnlySpan<Char>)

文字列として指定されたプロパティ名と、UTF-16 テキスト値 (JSON 文字列として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteString(String, String)

文字列として指定されたプロパティ名と、文字列テキスト値 (JSON 文字列として) を、JSON オブジェクトの名前/値ペアの一部として書き込みます。

WriteStringValue(DateTime)

JSON 配列の要素として、DateTime 値 (JSON 文字列として) を書き込みます。

WriteStringValue(DateTimeOffset)

JSON 配列の要素として、DateTimeOffset 値 (JSON 文字列として) を書き込みます。

WriteStringValue(Guid)

JSON 配列の要素として、Guid 値 (JSON 文字列として) を書き込みます。

WriteStringValue(JsonEncodedText)

JSON 配列の要素として、事前にエンコードされたテキスト値 (JSON 文字列) を書き込みます。

WriteStringValue(ReadOnlySpan<Byte>)

JSON 配列の要素として、UTF-8 テキスト値 (JSON 文字列) を書き込みます。

WriteStringValue(ReadOnlySpan<Char>)

JSON 配列の要素として、UTF-16 テキスト値 (JSON 文字列) を書き込みます。

WriteStringValue(String)

JSON 配列の要素として、文字列テキスト値 (JSON 文字列) を書き込みます。

拡張メソッド

ConfigureAwait(IAsyncDisposable, Boolean)

非同期の破棄可能から返されるタスク上での待機がどのように実行されるかを構成します。

適用対象