JSON序列化和反序列化

一、JSON数据的三种形式

1、对象

var user={   "name": "Tom",

                   "role":"student"   };

2、数组

var userlist=[ {"name": "Tom", "role":"student"},

                     {"name": "Jhon", "role":"student"} ];

3、字符串

var user="{\"name\": \"Jhon\", \"role\":\"student\"}";

二、序列化:对象 转换成 JSON数据

三、反序列化:JSON数据 转换成 对象

四、几种反序列化:

1、JSON反序列化成字典:

string temp="{\"name\": \"Jhon\", \"role\":\"student\",\"age\":\"18\"}";

Dictionary<string, string> jsonDict = JsonConvert.DeserializeObject<Dictionary<string, string>>(temp);

int Nums = jsonDict.Count;

得到:jsonDict[0]=>  key:"name", value:"Jhon"

          jsonDict[1]=>key:"role", value:"student"

          jsonDict[2]=>key:"age", value:"18"

           Nums=3

2、JSON反序列化成列表:

string json = "[ {"name": "Tom", "role":"student"},
                 {"name": "Jhon", "role":"student"}, 
                 {"name": "Marry", "role":"student"}, 
               ]";
List<Person> people= JsonConvert.DeserializeObject<List<Person>>(json);  //其中Person为类类型

Person p0=people[0];

string name=p0.name;

int Nums = products.Count;

得到:name="Tom"  & Nums=3

 

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页