加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

cocos2d-x rapidjson

发布时间:2020-12-14 19:31:51 所属栏目:百科 来源:网络整理
导读:#include "json/rapidjson.h" #include "json/document.h" rapidjson::Document doc; ssize_t size = 0; unsigned char *pBytes = nullptr; std::string filePath = cocos2d::FileUtils::getInstance()-fullPathForFilename(fileName); pBytes = cocos2d::CC
    #include "json/rapidjson.h"
    #include "json/document.h"
    rapidjson::Document doc;
    ssize_t size = 0;
    unsigned char *pBytes = nullptr;
    
    std::string filePath = cocos2d::FileUtils::getInstance()->fullPathForFilename(fileName);
    pBytes = cocos2d::CCFileUtils::getInstance()->getFileData(fileName,"r",&size);
    std::string contentStr((const char*)pBytes,size);
    CC_SAFE_DELETE_ARRAY(pBytes);
    doc.Parse<rapidjson::kParseDefaultFlags>(contentStr.c_str());
    
    if(doc.HasParseError())
    {
        return;
    }
    
    if(!doc.IsObject())
    {
        return;
    }
    
    const rapidjson::Value& data = doc["character"];
    if(data.IsArray())
    {
        for (int i = 0; i < data.Size(); ++i)
        {
            const rapidjson::Value& rowData = data[i];
            std::string str = rowData["name"].GetString();
            CCLOG("-----%s",str.c_str());
        }
    }
    else
    {
        CCLOG("not array");
    }

//character.json
{
    "character": [
        {
            "name": "lee"
        },{
            "name": "jack"
        }
    ]
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读