Utf8JsonWriter
Перед чтением из потока вызовите
Flush или закройте
писатель через Dispose.
BOM не пишется. Пошаговое чтение -
Utf8JsonReader.
Синтаксис
using Utf8JsonWriter writer = new Utf8JsonWriter(stream);
writer.WriteStartObject();
writer.WriteString("Name", "abcde");
writer.WriteEndObject();
writer.Flush();
Пример
Давайте записать объект и
прочитать текст после
Flush:
using System;
using System.IO;
using System.Text;
using System.Text.Json;
class Program
{
static void Main()
{
MemoryStream stream = new MemoryStream();
Utf8JsonWriter writer = new Utf8JsonWriter(stream);
writer.WriteStartObject();
writer.WriteString("Name", "abcde");
writer.WriteEndObject();
writer.Flush();
string res = Encoding.UTF8.GetString(stream.ToArray());
Console.WriteLine(res);
}
}
Результат выполнения кода:
{"Name":"abcde"}
Пример
Давайте закрыть писатель через
using вместо явного
Flush:
using System;
using System.IO;
using System.Text;
using System.Text.Json;
class Program
{
static void Main()
{
MemoryStream stream = new MemoryStream();
string res;
using (Utf8JsonWriter writer = new Utf8JsonWriter(stream))
{
writer.WriteStartObject();
writer.WriteString("Name", "abcde");
writer.WriteEndObject();
}
res = Encoding.UTF8.GetString(stream.ToArray());
Console.WriteLine(res);
}
}
Результат выполнения кода:
{"Name":"abcde"}
Пример
Давайте записать число в корень:
using System;
using System.IO;
using System.Text;
using System.Text.Json;
class Program
{
static void Main()
{
MemoryStream stream = new MemoryStream();
Utf8JsonWriter writer = new Utf8JsonWriter(stream);
writer.WriteNumberValue(12345);
writer.Flush();
string res = Encoding.UTF8.GetString(stream.ToArray());
Console.WriteLine(res);
}
}
Результат выполнения кода:
12345
Смотрите также
-
Utf8JsonReader,
чтение байтов -
ToJsonString,
текст из узла -
Parse,
разбор текста -
JsonObject,
объект в памяти