转载自:http://blog.csdn.net/u012945598/article/details/22608599
在Cocos2d-x-2.2.2的版本中,将Jsoncpp的库替换成了rapidJson,其主要原因是rapidJson的解析效率要高于Jsoncpp,今天我们来学习一下Cocos2d-x 中如何使用rapidJson进行Json解析。
在第15篇教程中我们学习了2.2.1版本中的Json解析方法,今天我们仍然采用第15篇教程中的Json文件对其进行解析,原教程地址:http://www.jb51.cc/article/p-csqhjqnj-bcr.html
Json文件中数据如下:
{
"Tollgate": [
{
"Type1": {
"RefreshTime":0.5,
"Count":100
},
"Type2": {
"RefreshTime":5,
"Count":2
}
},
{
"Type1": {
"RefreshTime":1,
"Count":120
},
"Type2": {
"RefreshTime":10,
"Count":2
}
}
]
}
这是一个很简单的关卡配置信息。其中“Tollgate”键对应的value是一个数组,数组中又含有两个table,每个table中又包含了两个键值对,每个Type键对应一个table,我们接下来要做的,就是解析中数组中第一个Table中Type1键所对应table的RefreshTime键的value。下面看代码,rapidJson位于extension库的CocoStudio文件下,想要使用rapidJson,首先要引入头文件及命名空间:
下面我们直接在init()方法中进行Json解析,首先看一下上图的左侧目录,rapidJson下有一个document.h的文件,rapidJson解析的相关方法都位于document类中,这点与之前的Jsoncpp的使用是有些差异的
。
这里我们只是讲解了其简单的获取value的方法,在实际使用过程中还需要大家进行进一步的封装。看一下控制台输出结果:
结果无误,解析成功。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。