.NET Core 3.0 JsonSerializer中Utf8JsonWriter和Utf8JsonReader使用及示例
时间:2022-11-06
1、使用Utf8JsonWriter生成UTF-8编码JSON字符串
var options = new JsonWriterOptions
{
Indented = true
};
using (var stream = new MemoryStream())
{
using (var writer = new Utf8JsonWriter(stream, options))
{
writer.WriteStartObject();
writer.WriteString("date", DateTimeOffset.UtcNow);
writer.WriteNumber("temp", 42);
writer.WriteEndObject();
}
string json = Encoding.UTF8.GetString(stream.ToArray());
Console.WriteLine(json);
}
2、使用Utf8JsonReader读取解析 UTF-8编码的JSON 的字节数组
var options = new JsonReaderOptions { AllowTrailingCommas = true, CommentHandling = JsonCommentHandling.Skip }; Utf8JsonReader reader = new Utf8JsonReader(jsonUtf8, options); while (reader.Read()) { Console.Write(reader.TokenType); switch (reader.TokenType) { case JsonTokenType.PropertyName: case JsonTokenType.String: { string text = reader.GetString(); Console.Write(" "); Console.Write(text); break; } case JsonTokenType.Number: { int value = reader.GetInt32(); Console.Write(" "); Console.Write(value); break; } // Other token types elided for brevity } Console.WriteLine(); }
特别声明:本站部分内容收集于互联网是出于更直观传递信息的目的。该内容版权归原作者所有,并不代表本站赞同其观点和对其真实性负责。如该内容涉及任何第三方合法权利,请及时与824310991@qq.com联系,我们会及时反馈并处理完毕。