C#-使用json

第一个方法:使用 System.Web.Script.Serialization命名空间
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Runtime.Serialization;
using System.Web.Script.Serialization;   // 引入这个命名空间
 
 
namespace json
{
     class Program
     {
         static void Main(string[] args)
         {
             object a = new { name = "jingya" , sex = "man" };
             string b = "{ name:\"xiaoxiao\",sex:\"man\" }" ;
             // 取得一个JavaScriptSerializer静态类的对象
             JavaScriptSerializer ser = new JavaScriptSerializer();
             // 将object对象b序列化为一个json格式的字符串
             string c = ser.Serialize(a);
             Console.WriteLine(c);
             // 用静态类的对象讲一个JSON格式的字符串反序列化为Person对象
             Person p1 = ser.Deserialize<Person>(b); 
             // 打印p1对象
             Console.WriteLine(p1);
             Console.ReadKey();
         }
         public class Person{
             public string name;
             public string sex;
             public override string ToString()
             {
                 return string.Format( "name:{0},\nsex:{1}" ,name,sex);
             }
         }
     }
}

第二个方法:使用Newtonsoft.Json组件,使用nuget安装

1
2
3
4
Console.WriteLine( "读取json文本" );
string jsonString = File.ReadAllText( "../../test.json" );
// 讲读取出来的json字符串反序列化为一个对象,用C#的方法来操作

  List<Person> myList = 

               JsonConvert.DeserializeObject<List<Person>>(jsonString);

JsonConvert还有很多方法,有待研究










来自为知笔记(Wiz)


你可能感兴趣的:(C#-使用json)