C# 格式化JSON的两种方式
发布日期:2024-07-22 02:52 点击次数:113
当我们拿到一大段JSON字符串的时候,分析起来简直头皮发麻,相信很大一部分朋友也都会直接去BEJSON等网站去做一个JSON格式化,已方便自己查看数据、分析日志等
本篇我们可以使用JSON.NET来实现JSON数据的格式化。
图片
实现功能:
格式化JSON字符串
开发环境:
开发工具:Visual Studio 2013
.NET Framework版本:4.5
实现代码:
//第一种方式private void btnFormat1_Click(object sender, EventArgs e) { if (textBox1.Text.Length == 0) { return; } try { JsonSerializer serializer = new JsonSerializer(); TextReader tr = new StringReader(textBox1.Text); JsonTextReader jtr = new JsonTextReader(tr); object obj = serializer.Deserialize(jtr); if (obj != null) { StringWriter textWriter = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(textWriter) { Formatting = Formatting.Indented, Indentation = 4,//缩进字符数 IndentChar = ' '//缩进字符 }; serializer.Serialize(jsonWriter, obj); textBox1.Text = textWriter.ToString(); } } catch (Exception ex) { MessageBox.Show("错误的JSON"); } }//第二种方式 private void btnFormat2_Click(object sender, EventArgs e) { if (textBox1.Text.Length == 0) { return; } try { //JObject.ToString()方法会内部调用格式化,所以直接使用即可 string json = textBox1.Text.Trim(); //判读是数组还是对象 if (json.StartsWith("[")) { JArray jobj = JArray.Parse(textBox1.Text); textBox1.Text = jobj.ToString(); } else if (json.StartsWith("{")) { JObject jobj = JObject.Parse(textBox1.Text); textBox1.Text = jobj.ToString(); } } catch (Exception ex) { MessageBox.Show("错误的JSON"); } }//清空 private void btnClear_Click(object sender, EventArgs e) { textBox1.Text = ""; }
实现效果:
图片
第一种方式的缩进字符和缩进量可以换成其他的看看效果,但个人觉得肯定没有空格看着舒服由简入繁,拿来即用
后续精彩,持续关注
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。
下一篇:消息称小米第三款车为增程SUV,此前官方曾辟谣 上一篇:C# 发送邮件之QQ邮箱
热点资讯
- 2024-07-14酒鬼酒预计半年度利润降七成:高端未形成利润支撑,价格倒挂问题仍存
- 2024-08-11巴黎奥运会田径首金诞生 张俊男子20km竞走获第十
- 2024-09-028月29日皖天转债下跌0.28%,转股溢价率5.45%
- 2024-10-14《伤寒论》.第65条
- 2024-07-22C# 格式化JSON的两种方式
- 2024-09-028月29日华翔转债上涨1.96%,转股溢价率28.4%
相关资讯
- 酒鬼酒预计半年度利润降七成:高端未形成利润支撑,价格倒挂问题仍存
- 穿高腰“短裙”的小姐姐美得太撩人!
- 8月29日华翔转债上涨1.96%,转股溢价率28.4%
- 水羊股份(300740.SZ):上半年,中国大陆地区直营门店同比增速超400%,
- 《伤寒论》.第65条