Поделиться через


Utf8JsonWriter Класс

Определение

Предоставляет высокопроизводительный API для только пересылки, не кэшированной записи текста JSON в кодировке UTF-8.

public ref class Utf8JsonWriter sealed : IAsyncDisposable, IDisposable
public sealed class Utf8JsonWriter : IAsyncDisposable, IDisposable
type Utf8JsonWriter = class
    interface IAsyncDisposable
    interface IDisposable
type Utf8JsonWriter = class
    interface IDisposable
    interface IAsyncDisposable
Public NotInheritable Class Utf8JsonWriter
Implements IAsyncDisposable, IDisposable
Наследование
Utf8JsonWriter
Реализации

Комментарии

Utf8JsonWriter записывает текст последовательно без кэширования и по умолчанию соответствует RFC JSON, за исключением написания комментариев.

Метод, который пытается написать недопустимый JSON, если проверка включена, создает InvalidOperationException с сообщением об ошибке, относящееся к контексту.

Чтобы отформатировать выходные данные с отступами и пробелами, пропустить проверку или настроить поведение экранирования, создайте экземпляр JsonWriterOptions и передайте его в модуль записи.

Дополнительные сведения см. в статье Как создавать пользовательские сериализаторы и десериализаторы с помощью System.Text.Json.

Конструкторы

Utf8JsonWriter(IBufferWriter<Byte>, JsonWriterOptions)

Инициализирует новый экземпляр класса Utf8JsonWriter с помощью указанного IBufferWriter<T> для записи выходных данных и параметров настройки.

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)

Записывает предварительно закодированное имя свойства и значение Boolean (как литерал JSON true или false) в составе пары имен и значений объекта JSON.

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)

Записывает значение Boolean (как литерал JSON true или false) в виде элемента массива JSON.

WriteCommentValue(ReadOnlySpan<Byte>)

Записывает текстовое значение UTF-8 в виде комментария JSON.

WriteCommentValue(ReadOnlySpan<Char>)

Записывает текстовое значение UTF-16 в виде комментария JSON.

WriteCommentValue(String)

Записывает строковое текстовое значение в виде комментария JSON.

WriteEndArray()

Записывает конец массива JSON.

WriteEndObject()

Записывает конец объекта JSON.

WriteNull(JsonEncodedText)

Записывает предварительно закодированное имя свойства и литерал JSON null в составе пары имен и значений объекта JSON.

WriteNull(ReadOnlySpan<Byte>)

Записывает имя свойства, указанное как диапазон байтов, доступных только для чтения, и литерал JSON null в составе пары имен и значений объекта JSON.

WriteNull(ReadOnlySpan<Char>)

Записывает имя свойства, указанное как диапазон символов только для чтения, и литерал JSON null в составе пары имен и значений объекта JSON.

WriteNull(String)

Записывает имя свойства, указанное в виде строки, и литерал JSON null в составе пары имен и значений объекта JSON.

WriteNullValue()

Записывает литерал JSON null как элемент массива JSON.

WriteNumber(JsonEncodedText, Decimal)

Записывает предварительно закодированное имя свойства и значение Decimal (как номер JSON) в составе пары имен и значений объекта JSON.

WriteNumber(JsonEncodedText, Double)

Записывает предварительно закодированное имя свойства и значение Double (как номер JSON) в составе пары имен и значений объекта JSON.

WriteNumber(JsonEncodedText, Int32)

Записывает предварительно закодированное имя свойства и значение Int32 (как номер JSON) в составе пары имен и значений объекта JSON.

WriteNumber(JsonEncodedText, Int64)

Записывает предварительно закодированное имя свойства и значение Int64 (как номер JSON) в составе пары имен и значений объекта JSON.

WriteNumber(JsonEncodedText, Single)

Записывает предварительно закодированное имя свойства и значение Single (как номер JSON) в составе пары имен и значений объекта JSON.

WriteNumber(JsonEncodedText, UInt32)

Записывает предварительно закодированное имя свойства и значение UInt32 (как номер JSON) в составе пары имен и значений объекта JSON.

WriteNumber(JsonEncodedText, UInt64)

Записывает предварительно закодированное имя свойства и значение UInt64 (как номер JSON) в составе пары имен и значений объекта 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)

Записывает значение Decimal (в виде числа JSON) в виде элемента массива JSON.

WriteNumberValue(Double)

Записывает значение Double (в виде числа JSON) в виде элемента массива JSON.

WriteNumberValue(Int32)

Записывает значение Int32 (как номер JSON) в виде элемента массива JSON.

WriteNumberValue(Int64)

Записывает значение Int64 (как номер JSON) в виде элемента массива JSON.

WriteNumberValue(Single)

Записывает значение Single (в виде числа JSON) в виде элемента массива JSON.

WriteNumberValue(UInt32)

Записывает значение UInt32 (в виде числа JSON) в виде элемента массива JSON.

WriteNumberValue(UInt64)

Записывает значение UInt64 (в виде числа JSON) в виде элемента массива JSON.

WritePropertyName(JsonEncodedText)

Записывает предварительно закодированное имя свойства (в виде строки JSON) в качестве первой части пары имен и значений объекта JSON.

WritePropertyName(ReadOnlySpan<Byte>)

Записывает имя свойства UTF-8 (в виде строки JSON) в качестве первой части пары имен и значений объекта JSON.

WritePropertyName(ReadOnlySpan<Char>)

Записывает имя свойства (в виде строки JSON) в качестве первой части пары "имя-значение" объекта JSON.

WritePropertyName(String)

Записывает имя свойства (в виде строки JSON) в качестве первой части пары "имя-значение" объекта JSON.

WriteRawValue(ReadOnlySequence<Byte>, Boolean)

Записывает входные данные в виде содержимого JSON. Ожидается, что входное содержимое является одним полным значением JSON.

WriteRawValue(ReadOnlySpan<Byte>, Boolean)

Записывает входные данные в виде содержимого JSON. Ожидается, что входное содержимое является одним полным значением JSON.

WriteRawValue(ReadOnlySpan<Char>, Boolean)

Записывает входные данные в виде содержимого JSON. Ожидается, что входное содержимое является одним полным значением JSON.

WriteRawValue(String, Boolean)

Записывает входные данные в виде содержимого JSON. Ожидается, что входное содержимое является одним полным значением 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)

Записывает предварительно закодированное имя свойства и значение DateTime (в виде строки JSON) в составе пары имен и значений объекта JSON.

WriteString(JsonEncodedText, DateTimeOffset)

Записывает предварительно закодированное имя свойства и значение DateTimeOffset (в виде строки JSON) в составе пары имен и значений объекта JSON.

WriteString(JsonEncodedText, Guid)

Записывает предварительно закодированное имя свойства и значение Guid (в виде строки JSON) в составе пары имен и значений объекта JSON.

WriteString(JsonEncodedText, JsonEncodedText)

Записывает предварительно закодированное имя свойства и предварительно закодированное значение (в виде строки JSON) в рамках пары имен и значений объекта JSON.

WriteString(JsonEncodedText, ReadOnlySpan<Byte>)

Записывает предварительно закодированное имя свойства и текстовое значение UTF-8 (в виде строки JSON) в рамках пары имен и значений объекта JSON.

WriteString(JsonEncodedText, ReadOnlySpan<Char>)

Записывает предварительно закодированное имя свойства и текстовое значение (в виде строки JSON) в рамках пары имен и значений объекта JSON.

WriteString(JsonEncodedText, String)

Записывает предварительно закодированное имя свойства и строковое текстовое значение (в виде строки JSON) в составе пары "имя-значение" объекта JSON.

WriteString(ReadOnlySpan<Byte>, DateTime)

Записывает имя свойства UTF-8 и значение DateTime (в виде строки JSON) в составе пары имен и значений объекта JSON.

WriteString(ReadOnlySpan<Byte>, DateTimeOffset)

Записывает имя свойства UTF-8 и значение DateTimeOffset (в виде строки JSON) в составе пары имен и значений объекта JSON.

WriteString(ReadOnlySpan<Byte>, Guid)

Записывает имя свойства UTF-8 и значение Guid (в виде строки JSON) в составе пары имен и значений объекта JSON.

WriteString(ReadOnlySpan<Byte>, JsonEncodedText)

Записывает имя свойства UTF-8 и предварительно закодированное значение (в виде строки JSON) в составе пары "имя-значение" объекта JSON.

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

Записывает имя свойства UTF-8 и текстовое значение UTF-8 (в виде строки JSON) в составе пары имен и значений объекта JSON.

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

Записывает имя свойства UTF-8 и текстовое значение UTF-16 (в виде строки JSON) в составе пары имен и значений объекта JSON.

WriteString(ReadOnlySpan<Byte>, String)

Записывает имя свойства UTF-8 и строковое текстовое значение (в виде строки JSON) в составе пары имен и значений объекта 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>)

Записывает имя свойства UTF-16 и текстовое значение UTF-8 (в виде строки JSON) в составе пары имен и значений объекта JSON.

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

Записывает имя свойства UTF-16 и текстовое значение UTF-16 (в виде строки JSON) в рамках пары имен и значений объекта JSON.

WriteString(ReadOnlySpan<Char>, String)

Записывает имя свойства UTF-16 и строковое текстовое значение (в виде строки JSON) в составе пары имен и значений объекта 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)

Записывает значение DateTime (в виде строки JSON) в виде элемента массива JSON.

WriteStringValue(DateTimeOffset)

Записывает значение DateTimeOffset (в виде строки JSON) в виде элемента массива JSON.

WriteStringValue(Guid)

Записывает значение Guid (в виде строки JSON) в виде элемента массива JSON.

WriteStringValue(JsonEncodedText)

Записывает предварительно закодированное текстовое значение (в виде строки JSON) в качестве элемента массива JSON.

WriteStringValue(ReadOnlySpan<Byte>)

Записывает текстовое значение UTF-8 (в виде строки JSON) в виде элемента массива JSON.

WriteStringValue(ReadOnlySpan<Char>)

Записывает текстовое значение UTF-16 (в виде строки JSON) в качестве элемента массива JSON.

WriteStringValue(String)

Записывает строковое текстовое значение (в виде строки JSON) в виде элемента массива JSON.

Методы расширения

ConfigureAwait(IAsyncDisposable, Boolean)

Настраивает способ ожидания задач, возвращаемых из асинхронного удаления.

Применяется к