利用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);

}
 
简而言之,就是把它变成解析成一个个对象,再将对象存储到vector中。

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/18503.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论