一、使用JavaScriptSerializer类
using System.Web.Script.Serialization;
//创建对象
Student stu = new Student()
{
id = 1235,
password = 236,
name = "张三"
};
//序列化
JavaScriptSerializer js = new JavaScriptSerializer ();
string jsonStr = js.Serialize(stu);
//反序列化
Student od = js.Deserialize<Student >(jsonStr);
二、使用DataContractJsonSerializer类
using System.Web.Script.Serialization;
//对象
Student stu= new Student ()
{
id = 1236,
password = 2966,
name= "李四"
};
//序列化
DataContractJsonSerializer js = new DataContractJsonSerializer(typeof(stu));
MemoryStream Obj = new MemoryStream();
js.WriteObject(Obj, stu);
Obj.Position = 0;
StreamReader sr = new StreamReader(Obj, Encoding.UTF8);
string json = sr.ReadToEnd();
sr.Close();
Obj.Close();
//反序列化
var ms = new MemoryStream(Encoding.Unicode.GetBytes(json));
DataContractJsonSerializer deseralizer = new DataContractJsonSerializer(typeof(Student ));
Student od= (Student )deseralizer.ReadObject(ms);
三、使用JSON.NET类库
using Newtonsoft.Json;
//对象
Student stu= new Student ()
{
id = 1237,
password = 136,
name = "小明"
};
//序列化
string jsonStr = JsonConvert.SerializeObject(stu);
//反序列化
Student od= JsonConvert.DeserializeObject<Student >(jsonStr);