Cocos2d-x3.0 Json解析

2dx3.0下JSON解析库官方已经集成好了,我们引用就OK。

JSON文件hello.json内容

{"pets":["dog","cat"],"stuInfo":{"stuAge":"23","stuName":"zhangsan","birthday":"1990-01-12"},"username":"tomsfff","other":[true,30]}



.h头文件

#include "cocos-ext.h"
#include "tinyxml2/tinyxml2.h"

.cpp

 //获取文件路径
        const char* file_path = FileUtils::getInstance()->fullPathForFilename("hello.json").c_str();
       log("external file path = %s",file_path);

        
        rapidjson::Document d1;
        std::string contentStr = FileUtils::getInstance()->getStringFromFile(file_path);
        d1.Parse<0>(contentStr.c_str());
        //打印JSon文件的内容
        printf("%s\n",contentStr.c_str());
        
        //获取JSon中数组的方法
        const rapidjson::Value& v = d1["pets"];
        if (v.IsArray()) {
            //这里一定要注意  变量i 一定要是   unsigned int  不然会报错
            for (unsigned int i = 0; i< v.Size(); ++i) {
                
                 const rapidjson::Value &val = v[i];
                log("%s",val.GetString());
            }
            
        }else
        {
            const rapidjson::Value& val = v["stuAge"];
            log("val.GetString() = %s",val.GetString());
            
        }


Cocos2d-x3.0 Json解析,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。