如何将数据序列化为缩进的json

时间:2016-05-13 00:19:50

标签: c# json file

我正在使用此代码将用户序列化为json文本文件。

if (File.Exists(path))
{
    using (var file = File.CreateText(path))
    {
        var serializer = new JsonSerializer();
        serializer.Serialize(file, this.users);
    }
}

这是我得到的结果:

[output]

我怎样才能得到这样的结果:

[pretty-print]

2 个答案:

答案 0 :(得分:6)

将序列化程序的格式设置为缩进。

var serializer = new JsonSerializer();
serializer.Formatting = Formatting.Indented;
serializer.Serialize(file, this.users);    

答案 1 :(得分:2)

请改用:

if (File.Exists(path))
{
    using (var file = File.CreateText(path))
    {
        var json = JsonConvert.SerializeObject(this.users, Formatting.Indented);
        file.Write(json);
    }
}