利用jsoncpp将json字符串转换为Vector

在API测试过程中经常会遇到传入参数为复杂类型,一般情况下在python下,习惯用字典来表示复杂类型。但是c++对字符串的处理是比较弱智的,一般c++里边会用vector来存储复杂类型,那么就存在转换的问题,下面小段代码记录了将字符串转换为Vector的过程

待转换的字符串如下:

const char * jsongroupinfo="[{/"groupId/" :946838524,/"groupname/" :/"bababa/", /"mask/":1,/"parentid/":946755072}]";

 

    Json::Reader reader;
    Json::Value json_object;
    if (!reader.parse(jsongroupinfo, json_object))
        return "parse jsonstr error";
    SUserChggroup sucg;
    VECTOR< SUserChggroup > m_groupInfo;
    for(int i = 0; i < json_object.size(); i ++)
    {
        Json::Value &current = json_object[i];
        sucg.m_groupId = current["groupId"].asInt();
        sucg.m_groupName = current["groupname"].asString();
        sucg.m_mask = current["mask"].asInt();
        sucg.m_parentId = current["parentid"].asInt();
        m_groupInfo.push_back(sucg);
    }

你可能感兴趣的:(json,vector,object,python,api,测试)