cocos2dx本身没有json解析类库,我们这里引入libjson进行解析。 ​

我目前使用的版本是7.6.1。

1.下载libjson并解压


下载后,解压出来,这里对我们有用的文件是:


libjson.h;


JSONOptions.h;


_internal->Source文件夹下的所有文件;


_internal->Dependencies文件夹下的所有文件。


将这些文件和文件夹复制出来,放到项目中的classes目录下,注意:文件层次不能改变


cocos2dx json数据解析_项目结构



2.添加源码到项目


为了项目结构更加清晰,这里为json源码新建一个文件夹。


cocos2dx json数据解析_json_02


然后将libjson里的头文化和cpp文件添加进来。


cocos2dx json数据解析_项目结构_03


下图是我添加后的文件;


cocos2dx json数据解析_json_04



3.进行Json解析


先在代码中引入libjson:




#include "libjson.h"


然后就可以写Json解析类了。如果不太会,可以参考下载的libjson文件夹下->Getting Started->C++ Interface中的文档。



JSONNode n(JSON_NODE);
n.push_back(JSONNode("RootA", "Value in parent node"));
JSONNode c(JSON_NODE);
c.set_name("ChildNode");
c.push_back(JSONNode("ChildA", "String Value"));
c.push_back(JSONNode("ChildB", 42));
n.push_back(c);
std::string jc = n.write_formatted();
std::cout << jc << std::endl;


OK,然后运行并查看输出。


cocos2dx json数据解析_下载地址_05