.Net序列化与反序列化的2种方法
生活随笔
收集整理的這篇文章主要介紹了
.Net序列化与反序列化的2种方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json; //方法一的引用
using System.Web.Script.Serialization; //方法二的引用namespace ConsoleApplication1
{class Program{static void Main(string[] args){#region(一)引用Newtonsoft.Json//①序列化實體對象User u = new User(){Name = "曹操",Age = 10,Sex = "男"};string json = JsonConvert.SerializeObject(u);Console.WriteLine(json); //{"Name":"曹操","Age":10,"Sex":"男"}
Console.ReadKey();//②反序列化實體對象User model = JsonConvert.DeserializeObject<User>(json);Console.WriteLine(string.Format("姓名:{0},年齡:{1},性別:{2}",model.Name,model.Age,model.Sex)); //姓名:曹操,年齡:10,性別:男
Console.ReadKey();//③序列化實體對象集合List<User> ulst = new List<User>(){new User {Name="曹操",Age=10,Sex="男" },new User {Name="劉備",Age=12,Sex="女" },new User {Name="孫權",Age=13,Sex="男" },};string json2 = JsonConvert.SerializeObject(ulst);Console.WriteLine(json2); //[{"Name":"曹操","Age":10,"Sex":"男"},{"Name":"劉備","Age":12,"Sex":"女"},{"Name":"孫權","Age":13,"Sex":"男"}]
Console.ReadKey();//④反序列化實體對象集合List<User> ulst2 = JsonConvert.DeserializeObject<List<User>>(json2);foreach (User user in ulst2){Console.WriteLine(string.Format("姓名:{0},年齡:{1},性別:{2}", user.Name, user.Age, user.Sex));}//姓名:曹操,年齡:10,性別:男//姓名:劉備,年齡:12,性別:女//姓名:孫權,年齡:13,性別:男
Console.ReadKey();#endregion#region(二)引用System.Web.Extensions//①序列化實體對象User u2 = new User(){Name = "曹操",Age = 10,Sex = "男"};JavaScriptSerializer js = new JavaScriptSerializer();string json3 = js.Serialize(u2);Console.WriteLine(json3);//{"Name":"曹操","Age":10,"Sex":"男"}
Console.ReadKey();//②反序列化實體對象User model2 = js.Deserialize<User>(json3);Console.WriteLine(string.Format("姓名:{0},年齡:{1},性別:{2}", model2.Name, model2.Age, model2.Sex));//姓名:曹操,年齡:10,性別:男
Console.ReadKey();#endregion}}//User實體對象class User{public string Name { get; set; }public int Age { get; set; }public string Sex { get; set; }}
}
?
轉載于:https://www.cnblogs.com/yanyufei/p/9046885.html
總結
以上是生活随笔為你收集整理的.Net序列化与反序列化的2种方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 纯前端实现pdf分页下载,完美支持横屏竖
- 下一篇: asp.net core 拦击器制作的权