json的简单使用

1.解析json串
str={"code":"200","msg":{"phone":"123456","name":"kjgg"}};

 Json::Reader reader;  

 Json::Value root,msg;  

 if (reader.parse(str, root))  // reader将Json字符串解析到root,root将包含Json里所有子元素  

{  

      std::string code = root["code"].asString();  // 访问节点,upload_id = "UP000000"

      msg = root["msg"];   //解析对象中的对象

        int code = msg["phone"].asInt();    // 访问节点,code = 100 



json  数组:


 Channels=msgg["channels"];ss

 for(unsigned int i = 0; i < Channels.size(); i++)
 {

        m_Callid = Channels[i]["callId"].asInt();
        m_TemplateId=Channels[i]["templateId"].asInt();

}



2.生成json串:

Json::Value root,msgg;

 root["uid"] = Json::Value(m_Phone.c_str());
 root["status"] = Json::Value(206);
 root["msg"]= Json::Value(msgg);

 msgg["TemplateId"]= Json::Value(m_TemplateId.c_str());
 msgg["TemplateName"]= Json::Value(m_TemplateName.c_str());
 msgg["Lastoperatortime"]= Json::Value(m_Lastoperatortime.c_str());

 msgg["Channelnumber"]= Json::Value(m_Channelnumber.c_str());


Json::FastWriter fast_writer;
strResult = fast_writer.write(root);


生成json  数组:


Json::Value root,msgg,obj;

obj["radioId"]=Json::Value(it->m_RadioID.c_str());
obj["radioType"]=Json::Value(it->m_RadioType.c_str());

msgg.append(obj);    //把obj这个类放到msgg的数组里    这句话一定要放在赋值的后面


root["uid"] = Json::Value(1);

root["status"] = Json::Value(210);
root["msg"]=msgg;    //msgg的属性为msg   这句话一定要放在赋值的后面


Json::FastWriter fast_writer;
strResult = fast_writer.write(root);



3.json 对象中包含json对象的生成

msgg["radioId"]=Json::Value(it->m_RadioID.c_str());
msgg["radioType"]=Json::Value(it->m_RadioType.c_str());


root["status"] = Json::Value(210);
root["msg"]=msgg;
          //这句话一定要放在赋值的后面








  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值