A. cocos2dx 3.0 游戏存档的实现
你可以用plist,也可以直接xml,但感觉这里面没什么卵用的字符太多了,浪费空间。
直接用json吧,加密后,写进去。当程序需要使用的时候读取然后解密,在解析,就得到对象或者数组了。cocos2dx扩展包里面本身就有rapidjson,特别好用。
如果是经常需要修改的数据,肯定非sqlite3莫属了,扩展里面也集成了这个,可以直接拿来用,但这个免费版的没加密功能,推荐使用wxsqlite3(网上有教程,使用AES 128加密,也可以使用 256加密,在使用上仅仅比sqlite3多了一个步骤,ios,android,win都可以用,简单粗暴),
至于UserDefault,用来放配置信息最好,比如声音的大小,音效的大小,等等。如果放自己的战斗数据,最好加个密,cocos2dx也集成了一个#include "base/base64.h",也是很好用的加密算法。
B. 如何使用rapidjson库进行json格式的封装及解析
//一,转json格式
//1,获取Document对象
Document doc;
doc.SetObject(); //key-value 相当与map
//doc.Setvalue(); //数组型 相当与vector
Document::AllocatorType &allocator=doc.GetAllocator(); //获取分配器
C. rapidjson 解析字符串后如何去掉斜线 “\/aaa" 变成"/aaa
你这来个不算标准的JSON格式数据源,可以先将\"替换成"即可。
再用json_decode()系统函数将其转为json对象,如需转为数组加上第二个参数为true即可。
若仍输出为NULL,是由于存在BOM头信息,
$arr = json_decode(trim($json,chr(239).chr(187).chr(191)),true);
转换即可。
D. c++保存数组到json文件报错
不能一次放入过多数据,建议循环写入数据,不要一次性写入。望采纳,谢谢