jsoncpp解析 json对象


void GetHttpValue::urlopen(std::string url) { std::string stTemp; char chTemp[1000]; ZeroMemory(chTemp,1000); HINTERNET hSession = InternetOpen(_T("UrlTest"),INTERNET_OPEN_TYPE_PRECONFIG,NULL,0); if (hSession != NULL) { HINTERNET hHttp = InternetOpenUrl(hSession,url.c_str(),INTERNET_FLAG_DONT_CACHE,0); if (hHttp != NULL) { printf("%s\n\n",url.c_str()); BYTE Temp[MAXSIZE]; ULONG Number = 1; while (Number > 0) { InternetReadFile(hHttp,Temp,MAXSIZE - 1,&Number); Temp[Number] = '\0'; CopyMemory(chTemp,Number); printf("%s",Temp); } InternetCloseHandle(hHttp); hHttp = NULL; } InternetCloseHandle(hSession); hSession = NULL; } stTemp = chTemp; cout << "=========================" << endl << endl;// 到这的作用:访问一个URL地址获取它的返回值(一个json对象) cout << stTemp << endl; std::string stResult = stTemp;//从这开始解析这个json对象 Json::Reader readerJson; Json::Value valueJson; if (readerJson.parse(stResult,valueJson)) { int code = valueJson["code"].asInt(); std::string msg = valueJson["msg"].asString(); int userId = valueJson["data"]["userId"].asInt(); std::string nickName = valueJson["data"]["nickName"].asString(); std::string headImgURL = valueJson["data"]["headImgURL"].asString();//这里有多重包含 int gold = valueJson["data"]["gold"].asInt(); int sex = valueJson["data"]["sex"].asInt(); } }

相关文章

  jsonp需要在页面中添加一个<script>元素,由该元素来从其他服务器加载json数据。 <body&g...
<script> var testApi = "地址"; $.ajax({ url:testApi,//可以不是本地域名 type:‘post...
总是有人会遇到跨域问题,然后有个jsonp的解决方案,MVC中代码如下: public class JsonpResult : Syst...
最近开发中遇到调用第三方web_api的功能,后端在处理json数据时使用fastjson来做反序列化,由于调用api...
JSON全称为JavaScript ObjectNotation,它是一种轻量级的数据交换格式,易于阅读、编写、解析。jsoncpp...
JsonSerializer有多个属性,用于自定义如何序列化JSON。这些也可以通过JsonSerializerSettings参数,在...