void ParseItemJson()
{
TextAsset itemText = Resources.Load<TextAsset>("Items");//读取Resources中Items文件,需要将Items文件放到Resources文件夹中
string itemJson = itemText.text;//读取Json信息
JsonData s=JsonMapper.ToObject(itemJson);//声明解析数组
// Debug.Log(itemJson);
// Debug.Log("ID:"+s[0]["id"]+ " " + "名称:"+ s[0]["name"]+" "+"简介:"+ s[0]["description"]);//因为是数据组,所以要加[0]指定层级
// Debug.Log("ID:" + s[1]["id"] + " " + "名称:" + s[1]["name"] + " " + "简介:" + s[1]["description"]);
//遍历Json数组
foreach (JsonData temp in s) {
Debug.Log(temp["name"].ToString() + temp["description"] + temp["type"]);
}
}
一个简单的解析方法,使用LitJson.dll插件,注意的是,如果数据是一个数组,单独使用时需要需要增加序号,如程序中的 s[0][“id”] ,0就是第几个数组,遍历则不需要,下边是Json文件内容,有兴趣可以试试。
[
{
"id": 1,
"name": "血药",
"description": "这玩意能加血。",
"type": "Consumable",
"capacity": 10,
"buyPrice": 10,
"sellPrice": 5,
"hp": 10,
"mp": 0,
"sprite": "Resources/Sprites/Items/hp.png"
},
{
"id": 2,
"name": "蓝药",
"description": "这玩意能加蓝。",
"type": "Consumable",
"capacity": 10,
"buyPrice": 10,
"sellPrice": 5,
"hp": 0,
"mp": 10,
"sprite": "Resources/Sprites/Items/mp.png"
}
]