本文共 1707 字,大约阅读时间需要 5 分钟。
在我们的项目开发过程中,策划们可能会配置很多的数据在Json文件中,例如商城物品,随机名称等,往往这些数据会放在不同的Json文件中
Json是一种轻量级存储和交换文本信息的语法,类似XML,但是Json比XML更小、更快,更易解析
数据在键值对中
数据之间用逗号分隔 花括号保存对象,对象与对象之间用逗号分隔 方括号保存数组[{ "ID": 1001, "Name": "技能1", "damage": 10 }, { "ID": 1002, "Name": "技能2", "damage": 20 }]
Json校验:
Json格式转C#实体类:
——导入Json库文件:
——导入Json文件
[ { "ID": "1001", "Name": "技能1", "Damage": 10 }, { "ID": "1002", "Name": "技能2", "Damage": 20 }]
——编写代码将解析Json
//1.解析成JsonData对象后再解析成单独数据void ParseJson(){ TextAsset ta = Resources.Load("Test"); JsonData data = JsonMapper.ToObject(ta.text); foreach (JsonData temp in data) { string id = temp[0].ToString(); string name = temp[1].ToString(); int damage = int.Parse(temp[2].ToJson()); Debug.Log(id + "-" + name + "-" + damage + "\n"); }}//2.直接解析成实体类(实体类的字段名称必须和Json的键一一对应)public class Test : MonoBehaviour{ private void Awake() { ParseJson(); } void ParseJson() { TextAsset ta = Resources.Load ("Test"); Item[] itemList = JsonMapper.ToObject - (ta.text); foreach (var temp in itemList) { Debug.Log(temp.ID + "-" + temp.Name + "-" + temp.Damage); } }}public class Item{ public string ID; public string Name; public int Damage;}
——导入Json库文件:
——编写实体类
public class Item{ public string ID; public string Name; public int Damage;}
——编写代码将实体类转换为Json
void ParseJson(){ Item item = new Item(); item.ID = "1001"; item.Name = "技能1001"; item.Damage = 99; string json = JsonMapper.ToJson(item); Debug.Log(json);}
转载地址:http://gtyvf.baihongyu.com/