如何在.NET 中使用 C # 格式化和缩进 JSON?

我在利用杰森。Net 将 XML 序列化为 JSON。当我将序列化的字符串写入文件时,它们都在一行中。我怎么才能让它看起来像带有标签和缩进的 Json 呢?

54372 次浏览

将 JSON 写入器 Formatting属性设置为 Formatting.Indented:

jsonWriter.Formatting = Formatting.Indented;

JsonConvert.Serialize*方法也有采用 Formatting枚举的重载(感谢 JohnFlatness)。

文件: < strong > 序列化一个对象

对于那些问我如何格式化 JSON 的人。NET 使用 C # ,并希望看到 如何立即使用它单线恋人。下面是缩进的 JSON 字符串一行代码:

有两个著名的 JSON 格式化程序或解析器需要序列化:

Newtonsoft Json. Net version:

using Newtonsoft.Json;


var jsonString = JsonConvert.SerializeObject(yourObj, Formatting.Indented);

. Net 7版本:

using System.Text.Json;


var jsonString = JsonSerializer.Serialize(yourObj, new JsonSerializerOptions { WriteIndented = true });