时间:2021-07-01 10:21:17 帮助过:29人阅读
var testJson = { "Name" : "奥巴马" , "ByName" : ["小奥","小巴","小马"], "Education" : { "GradeSchool" : "华盛顿第一小学", "MiddleSchool" : ["华盛顿第一初中" , "华盛顿第一高中"], "University" : { "Name" : "哈佛大学", "Specialty" : ["软件工程","会计"] } } }
变量testJson就是一个json对象,testJson对象包括三个 键/值 对。
第一个 键/值 对: 键(key)是"Name“ ,其对应的值(value)是 "奥巴马" ,即 testJson["Name"] == "奥巴马"
第二个 键/值 对: 键 是 "ByName" ,值是一个数组,是一个string集合。有必要的话,数组里面的元素也可以是 键/值 对。
第三个 键/值 对: 键 是 "Education",值是一个 Json对像,该json对象包括三个 键/值 对,这就是嵌套了。。。
总结:json对象就是若干个 键/值 对的集合,键是string,值可以是基本类型,或者嵌套一个Json对象,或者是一个数组(数组里的元素可以是基本类型,也可以是json对象,可以继续嵌套)。
获取名字:testJson["Name"]
获取第一个别名:testJson["ByName"][0] 。testJson的 键"ByName" 对应的值 是一个string数组
获取小学名字: testJson["Education"]["GradeSchool"] , 获取大学主修专业:testJson["Education"]["University"]["Specialty"][0]
下面举个实例:
定义一个符合json格式要求的字符串:
string testJson = "{\"Name\" : \"奥巴马\",\"ByName\" : [\"小奥\",\"小巴\",\"小马\"],\"Education\":{\"GradeSchool\" : \"华盛顿第一小学\",\"MiddleSchool\" : [\"华盛顿第一初中\" , \"华盛顿第一高中\"], \"University\" :{ \"Name\" : \"哈佛大学\", \"Specialty\" : [\"软件工程\",\"会计\"]}}}";
然后需要用该字符串作为参数new 一个 JsonObject对象。微软自带的类库 System.Json ,然后添加命名空间 using System.Json;
主要代码就一句:JsonObject js = JsonObject.Parse(testJson); 用字符串testJson 作为参数new 一个 JsonObject 对象。通过监视我们可以看到js里面的内容和预料的一样,通过下面这幅图你应该可琢磨出很多东西来吧
额外插一句:js["Education"]["University"]["Specialty"] 的内容是 {[ "软件工程", "会计"]},
但js["Education"]["University"]["Specialty"].Contains( "软件工程") 的值 是false。原因自己琢磨
更多Json格式解析相关文章请关注PHP中文网!