您的位置:首页 > 编程语言 > C语言/C++

【C++】JSON数据解析——jsoncpp的使用(下)

2014-05-26 16:39 676 查看
"status": {

     "code": "成功/错误代码",

     "msg": "错误信息"

},

"data": {

     "timeStampNum": "当前服务器时间,格式YYYYMMDDHHMMSS",

     "trafficAddress": "实时交通URL"

     "isHasTraffic": "实时交通可用状态,1为可用,0为不可用"

     "terminalVer":"终端版本号"

     "deviceStatus":"设备可用状态,1为可用,0为不可用"

     "trafficVer":"实时交通版本,用于校验是否需要更新实时交通URL"

}

上面这个是我以前项目中使用过的json字符串格式。现在我们试着使用jsoncpp来解析他,来获得当前的deviceStatus是否可用。

先来看一段示例代码

int CJSONParser::DeviceStatus( const char* pData )
{
if(pData == NULL || strlen(pData) <= 0)
{
return 0;
}
//创建reader实例,用来读取json字符串
Json::Reader reader;
Json::Value root;

bool bRead = reader.parse(pData,root);
if (!bRead)
{
return 0;
}
//value就是第一层大括号里面的数据
Json::Value vData = root["data"];

int nDeviceStatus = vData["deviceStatus"].asInt();

return nDeviceStatus;
}

这样,我们想要的deviceStatus的值,就可以读取到了。

读者可以自己创建一个工程试试读取一些json字符串的内容,这样就会更加熟悉jsoncpp的用法了。

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  json jsoncpp c++