C#中使用JavaScriptSerializer类实现序列化与反序列化
1.添加引用
? ??JavaScriptSerializer類的使用需要引用System.Web.Extensions.dll文件,根據路徑:C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.Web.Extensions.dll,找到后直接添加至引用即可,另外代碼中需要使用using System.Web.Script.Serialization;
2.常見方法介紹
(1)?JavaScriptSerializer():構造函數,用于創建新的JavaScriptSerializer對象。
(2)ConvertToType<T>(object):將json字符串轉為類型為T(將一個Object對象轉換為指定的對象T)。
(3)Deserialize<T>(string):將json字符串轉化為類型T。
(4)Serialize(object):將一個對象序列化成JSON字符串
3.定義一個類,用來序列化與反序列化
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace MyJson {public class StudentInfo{public int ID { get; set; }public string Name { get; set; }public int Age { get; set; }public string Gender { get; set; }} }4.實例操作:將上述列表信息序列化與反序列化
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Web.Script.Serialization; namespace MyJson {class Program{static void Main(string[] args){List<StudentInfo> stuList = new List<StudentInfo>();stuList.Add(new StudentInfo() { ID = 1, Name = "唐三", Age = 20, Gender = "男" });stuList.Add(new StudentInfo { ID = 2, Name = "小舞", Age = 20, Gender = "女" });stuList.Add(new StudentInfo { ID = 3, Name = "唐昊", Age = 52, Gender = "男" });//創建一個JavaScriptSerializer對象JavaScriptSerializer json = new JavaScriptSerializer();//將上述信息列表序列化為Json字符串string serializeResult = json.Serialize(stuList);//序列化后的信息Console.WriteLine("{0}", serializeResult);//將josn字符反序列化為信息列表List<StudentInfo> DeserializedResult = json.Deserialize<List<StudentInfo>>(serializeResult);//反序列化后的信息foreach(StudentInfo stuInfo in DeserializedResult){Console.WriteLine("ID:{0}", stuInfo.ID);Console.WriteLine("Name:{0}", stuInfo.Name);Console.WriteLine("Age:{0}", stuInfo.Age);Console.WriteLine("Gender:{0}", stuInfo.Gender);}Console.ReadKey();}} }5.序列化后的信息
6.反序列化后的信息
?
轉載于:https://www.cnblogs.com/QingYiShouJiuRen/p/10271269.html
總結
以上是生活随笔為你收集整理的C#中使用JavaScriptSerializer类实现序列化与反序列化的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 维京传奇第五季下载
- 下一篇: git遇到的问题之“Please mak