我项目的Json数据形式是这样的。
[
{
"UnitName" : "A" ,
"Level" : "1" ,
"HitPoint" : "450" ,
"Damage" : "8" ,
"Experience" : "100"
},
{
"UnitName" : "A" ,
"Level" : "2" ,
"HitPoint" : "540" ,
"Damage" : "11" ,
"Experience" : "150"
},
....
]
我尝试使用JsonUtility阅读此内容。 这是我阅读Json代码。
public void Load()
{
string jsonString = File.ReadAllText(Application.dataPath + "/Database/SpiritDataA.json");
CharacterData data = JsonUtility.FromJson<CharacterData>(jsonString);
Debug.Log(data);
}
我正在测试它,并得到此错误。
ArgumentException:JSON必须表示对象类型。 的
我试过在数组中使用的其他方法。
[Serializable]
public class Wrapper<T>
{
public T[] items;
}
public class JsonHelper
{
public void Load()
{
string jsonString = File.ReadAllText(Application.dataPath + "/Database/SpiritData.json");
CharacterData data = JsonUtility.FromJson<CharacterData>(jsonString);
Debug.Log(data);
}
public CharacterData[] FromJson(string s)
{
return JsonUtility.FromJson<Wrapper<CharacterData>>(s).items;
}
}
我得到同样的错误。
由于谷歌搜索,我认为这个文件结构与其他常见的东西有点不同。但是我想阅读文件,如果可能的话保留现有的格式。
我该怎么办?