我目前有一个 json 文件,看起来有点像这个叫做“Monsters.json”的文件
{
"frosline":{
"id":1,
"name":"frosline",
"baseStats":[4, 3, ...],
...}
}
我还有一个包含所有相同变量的 MonsterStats 类,我无法通过代码向这个 json 文件添加更多怪物(例如,一个文件可能包含已被捕获的怪物列表 ala pokemon)
我试过做类似的事情:
MonsterStats stats = new MonsterStats(<stats for the monster here>)
JsonData monsterJson = JsonMapper.ToJson(stats);
String oldsave = File.ReadAllText(Application.dataPath + "/Monster.json");
JsonData monsterData = JsonMapper.ToObject(oldsave);
monsterData["newMon"] = monsterJson;
但不是在“newMon”中添加一个新对象,而是作为一个奇怪的字符串添加:
newMon":"{\"id\":0,\"name\":\"player\",\"baseStats\":[10,0,0,0,0,0],\"xpyield\":0,\"evyield\":[0,0,0,0,0,0],\"moves\":[\"Ember\",\"\",\"\",\"\"],\"health\":11,\"stats\":[11,5,5,5,5,5],\"evs\":[0,0,0,0,0,0],\"level\":1,\"xp\":0}"}
我曾尝试寻找类似的问题或解决方案,但我对 JSon 很陌生,所以很难知道要搜索什么。 如果有帮助,这就是使用 litjson。
同样让我恼火的是,如果我简单地打印出变量 monsterJson,它就会干净利落地出现:
{"id":0,"name":"player","baseStats":[10,0,0,0,0,0],"xpyield":0,"evyield":[0,0,0,0,0,0],"moves":["Ember","","",""],"health":11,"stats":[11,5,5,5,5,5],"evs":[0,0,0,0,0,0],"level":1,"xp":0}
最佳答案
所以啊,我有点让它工作了,这绝对不是最好的答案,所以仍然希望知道他们正在做的人的回复。
更改了代码的最后一行:
monsterData["newMon"] = JsonMapper.ToObject(monsterJson.ToString());
关于c# - 试图轻松保存游戏数据,需要帮助将对象统一添加到 json 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36324147/