微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何美化JSON以显示在TextBox中?

如何解决如何美化JSON以显示在TextBox中?

| 如何使用C#美化JSON?我想在TextBox控件中打印结果。 是否可以为此使用JavaScriptSerializer,还是应该使用JSON.net?除非必须这样做,否则我想避免反序列化字符串。     

解决方法

        使用JSON.Net,您可以使用特定格式美化输出。 在dotnetfiddle上进行演示。 码
public class Product
{
    public string Name {get; set;}
    public DateTime Expiry {get; set;}
    public string[] Sizes {get; set;}
}

public void Main()
{
    Product product = new Product();
    product.Name = \"Apple\";
    product.Expiry = new DateTime(2008,12,28);
    product.Sizes = new string[] { \"Small\" };

    string json = JsonConvert.SerializeObject(product,Formatting.None);
    Console.WriteLine(json);
    json = JsonConvert.SerializeObject(product,Formatting.Indented);
    Console.WriteLine(json);
}
输出量
{\"Name\":\"Apple\",\"Expiry\":\"2008-12-28T00:00:00\",\"Sizes\":[\"Small\"]}
{
  \"Name\": \"Apple\",\"Expiry\": \"2008-12-28T00:00:00\",\"Sizes\": [
    \"Small\"
  ]
}
    ,        参加这个聚会有点晚,但是您可以使用json.NET来美化(或缩小)Json而无需反序列化:
JToken parsedJson = JToken.Parse(jsonString);
var beautified = parsedJson.ToString(Formatting.Indented);
var minified = parsedJson.ToString(Formatting.None);
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。