Cocos2d-x 2.2.2 如何读取数据编辑器导出的JSON?

Cocos2d-x 2.2.2 如何读取数据编辑器导出的JSON?
之前的CSJsonDictionary不存在了

请看 2.2.2 版本里面的 scenetest,这次把每个组件都分开了,里面有数值组件的使用方法。

同问,请问楼主解决了吗?
能不能把方法附一下

参考这个方法读取
bool CCComAttribute::parse(const std::string &jsonPath)
{
bool bRet = false;
unsigned long size = 0;
unsigned char pBytes = NULL;
do {
pBytes = cocos2d::CCFileUtils::sharedFileUtils()->getFileData(jsonPath.c_str(), “r”, &size);
CC_BREAK_IF(pBytes == NULL || strcmp((char
)pBytes, “”) == 0);
std::string load_str((const char*)pBytes, size);
CC_SAFE_DELETE_ARRAY(pBytes);

      _doc.Parse<0>(load_str.c_str());////////////////////////////_doc.Parse这一个函数是解析方法,解析后,其中_doc是 rapidjson::Document _doc;类型的一个全局变量


      CC_BREAK_IF(_doc.HasParseError());
      bRet = true;
    } while (0);
return bRet;

}

解析后可以通过调用

DICTOOL->getStringValue_json(_doc, key);//_doc是存放解析后数据的对象。key是你想要获取到的内容的关键字
DICTOOL->getBooleanValue_json(_doc, key);
DICTOOL->getFloatValue_json(_doc, key);

等方法获取值。

谢谢基本解决,还有个问题想请教下:
DICTOOL->getIntValue_json(_doc, key);
如果这个key没有value,返回的是"null",用getIntValue_json读就会报错了,
不知道有没有哪个接口能够判断key的value是够是空值,不然只能在json表里写个特殊的数值了

key是空的话自己就判断了

比如

if(key!=null)
{
DICTOOL->getIntValue_json(_doc, key);
}

value的值是空的话可能是用的方法不对。你断点查看下数据的类型,是否是int。

你好,图片中的楼上的代码,但是出编译不通过,麻烦看一下看是什么原因

这个方法可能在你的版本更名了。