C#操作json的几种方式
1、序列化:
需要先封装好对象,字段要和json字段相同,可以多,不可以少,一般用于已知且结构规则的json解析
json串:
方式一:
JavaScriptSerializer js = new JavaScriptSerializer(); var obj= js.Deserialize<对象名>(json字符串);
方式二:
var obj = JsonConvert.DeserializeObject<对象名>(json字符串);
json列表:
方式一:
JavaScriptSerializer js = new JavaScriptSerializer(); var obj = js.Deserialize<List<对象名>>(json字符串);
方式二:
var obj = JsonConvert.DeserializeObject<List<对象名>>(json字符串);
2、json解析JObject和JArray对象
一般用于复杂不规则json结构解析,免于封装对象,直接获取后再逐步拆分获取值
json串:
JObject jo = (JObject)JsonConvert.DeserializeObject(json字符串);
取值方式:jo["元素名"]
json列表:
JArray ja = (JArray)JsonConvert.DeserializeObject(json);
3、将对象,集合,数组生成json字符串
string json = JsonConvert.SerializeObject(要生成的对象);