压缩JSON
我们知道JObject等的ToString方法,输出的JSON字符串是经过格式化的,存在空格缩进和换行,以方便阅读。
例如:
Dim
json As
String =
"{'touser':['zhansan', 'lisi'],'msgtype':'text'}"
Dim
jo As
JObject = JsonConvert.DeserializeObject(json)
Output.Show(jo.ToSTring)
输出结果为:
{
"touser": [
"zhansan",
"lisi"
],
"msgtype": "text"
}
如果要压缩掉多余的空格和换行,得到紧凑格式的JSON字符串,可以用JsonConvert的SerializeObject。
例如:
Dim
json
As
String
=
"{'touser':['zhansan', 'lisi'],'msgtype':'text'}"
Dim
jo
As
JObject = JsonConvert.DeserializeObject(json)
Dim
ret1
As
String
= JsonConvert.SerializeObject(jo)
'紧凑格式
Dim
ret2
As
String
= JsonConvert.SerializeObject(jo, Formatting.Indented)
'缩进格式,等效于jo.ToString()
Output.Show(ret1)
Output.Show(ret2)
输出结果为如下,两种格式都有,你可以比较一下:
{"touser":["zhansan","lisi"],"msgtype":"text"}
{
"touser": [
"zhansan",
"lisi"
],
"msgtype": "text"
}
如果你需要在数据库中存储JSON字符串或者需要通过网络传送,采用紧凑格式比较好