1.首先自定义一个Json文本文件
{
"Name":"cc",
"Level":8,
"Age":18,
"SkillList":[
{
"Id": 3,
"Name": "天下无贼",
"Damage": 123
},
{
"Id": 4,
"Name": "空格",
"Damage": 150
},
{
"Id": 5,
"Name": "流星",
"Damage": 200
}
]
}
2.我们需要定义一个与文本文件相对应的两个类:有一个与数组相对应
(1)与数组对应<类名叫Skill>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MyJson
{
class Skill
{
public int Id;
public string Name;
public int Damage;
public override string ToString()
{
return string.Format("id:{0} name:{1} damage{2}",Id,Name,Damage);
}
}
}
(2)与整个Json文本文件对应<类名叫Player>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MyJson
{
class Player
{
public string Name { get; set; }
public int Level { get; set; }
public int Age { get; set; }
public List<Skill> SkillList { get; set; }
public override string ToString()
{
return string.Format("Name:{0} Level:{1} Age:{2} skillList:{3}",Name,Level,Age,SkillList);
}
}
}
3.开始解析
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using LitJson;
using System.IO;
namespace MyJson
{
class Program
{
static void Main(string[] args)
{
Player p = JsonMapper.ToObject<Player>(File.ReadAllText("MyJson2.txt"));
Console.WriteLine(p);
foreach (Skill item in p.SkillList)
{
Console.WriteLine(item);
}
Console.ReadKey();
}
}
}