Newtonsoft.Json 使用

 Newtonsoft.Json,是.Net中开源的Json序列化和反序列化工具,官方地址:https://www.newtonsoft.com/json

具体使用:

1. 右键项目=>Nuget包管理=>添加  Newtonsoft.Json

2. 引入命名空间

 

 

//数据类
public class Student
{
    public string Name { get; set; }
    public int Age { get; set; }
}
public class SchoolData
{
    public string Name = "";
    public List<Student> StudentList { get; set; }
}



//示例
private void Button_Click(object sender, RoutedEventArgs e)
{
    Student stu = new Student() { Name = "小明",Age = 18};
    string json = JsonConvert.SerializeObject(stu);//序列化
    Student stu2 = JsonConvert.DeserializeObject<Student>(json);//反序列化

    List<Student> stuList = new List<Student>();
    stuList.Add(new Student() { Name = "小明", Age = 18 });
    stuList.Add(new Student() { Name = "小红", Age = 19 });
    string json1 = JsonConvert.SerializeObject(stuList);
    List<Student> stuList2 = JsonConvert.DeserializeObject<List<Student>>(json1);

    SchoolData sch = new SchoolData();
    sch.Name = "xx初中";
    sch.StudentList = new List<Student>();
    sch.StudentList.Add(new Student() { Name = "小明", Age = 18 });
    sch.StudentList.Add(new Student() { Name = "小红", Age = 19 });
    string json2 = JsonConvert.SerializeObject(sch);
    SchoolData sch2 = JsonConvert.DeserializeObject<SchoolData>(json2);


    //测试我当前版本.net 4.6  Newtonsoft.Json 12.0.0.0   
    //可以把小写字段名称或者同名但是大小写不一样  自动识别转换
    string strJson = "{\"name\":\"小明\",\"age\":18}";
    Student s1 = JsonConvert.DeserializeObject<Student>(strJson);
    string strJson = "{\"NAME\":\"小明\",\"AGE\":18}";
    Student s1 = JsonConvert.DeserializeObject<Student>(strJson);
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值