person 类 代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace NewTonJSONTest
{
class Person
{
public string Name { get; set; }
public int Age { get; set; }
public string[] Mobiles { get; set; }
}
}
一个控制台程序的默认的类,也是main所在的类 Program 代码如下:
using System;
using System.Collections.Generic;
using Newtonsoft.Json;//
using Newtonsoft.Json.Linq;//
namespace NewTonJSONTest
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
List<Person> person0;
List<Person> person = new List<Person>(){
new Person() {Name = "China Mobile", Age = 30, Mobiles = new string[] {"13800138000","10086"}},
new Person() {Name = "China Telecom", Age = 60, Mobiles = new string[] {"10000","189"}},
new Person() {Name = "China Unicom", Age = 90, Mobiles = new string[] {"10010"}}
};
// 序列化为JSON字串
string str_json = JsonConvert.SerializeObject(person);
Console.WriteLine(str_json);
Console.WriteLine("序列化完成了,序列化了对象为一个json字符串");
// 反序列化为Person列表对象 ,反序列化是☞str_json字符串 序列化为一个对象
person0 = JsonConvert.DeserializeObject<List<Person>>(str_json);
foreach (var temp in person0)
{
Console.WriteLine(temp.Age + " " + temp.Name + " " + temp.Mobiles + "\n");
}
// JObject oPostData = JsonConvert.DeserializeObject<JObject>(str_json); //@@
// oPostData.GetValue("Channel").ToString();//@@
}
}
}
运行结果 如下图:
Hello World!
[{"Name":"China Mobile","Age":30,"Mobiles":["13800138000","10086"]},{"Name":"China Telecom","Age":60,"Mobiles":["10000","189"]},{"Name":"China Unicom","Age":90,"Mobiles":["10010"]}]
序列化完成了,序列化了对象为一个json字符串
30 China Mobile System.String[]
60 China Telecom System.String[]
90 China Unicom System.String[]
D:\Users\86133\source\repos\NewTonJSONTest\NewTonJSONTest\bin\Debug\net5.0\NewTonJSONTest.exe (进程 28896)已退出,代码为 0。
要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。
按任意键关闭此窗口. . .