json操作 第一篇
xml有标签,而json没有标签。
json是存储和交换xml的语法。而xml只能交换数据,不具有存储的功能。
json比xml更小,更快,更容易解析。json和xml一样是数据格式。
json 是一中轻量级的数据交换格式
json的格式一般是:
{
"employees":[
{firstName":"Bill","lastname":"Gates"},{"firstName":"George","lastName","Bush"},{"firstName":"Thomas","LastName":"Carter"}
]
}
什么是json
json是轻量级文本交换格式。
json独立于语言。
json具有自我描述性,更容易理解。就是说一看就明白是啥意思
json 采用javascript语法,但是独立于任何语言和平台。
什么是键值对:就是冒号前面和后面都有个值
json语法
json数据保存在键值对中,数据由逗号分隔开,花括号保存对象,中括号保存数组。
json对象的写法是:名称/值对。就是"name":'json',前面的键必须用双引号引起来,后面的值可以不用,后面的值可以是,整形,字符串,逻辑值,数组,对象和null.
json官网
json网址:json.org
c#解析库json的根上,只能有一个对象和数组。
添加LItjson
打开NUGET添加新建一个skill类
class Skill
{
public int id { get; set; }
public int damage { get; set; }
public string name { get; set; }
public override string ToString()
{
return string.Format("Id:{0},Damag:{1},Name:{2}",id,damage,name);
}
}
然后在main入口写入
class Program
{
static void Main(string[] args)
{
//使用泛型去解析json
Skill [] skillsArry=JsonMapper.ToObject<Skill[]>(File.ReadAllText("../json.txt"));
foreach (var tem in skillsArry)
{
Console.WriteLine(tem);
}
Console.ReadKey();
json里面的键必须和类里面的字段和属性保持一致这个json我们还可以用list集合
List<Skill> skilList = JsonMapper.ToObject<List<Skill>>(File.ReadAllText("../json.txt"));
foreach (var tem in skilList)
{
Console.WriteLine(tem);
}
Console.ReadKey();