C++ 解析json串
阿新 • • 發佈:2018-12-25
首先, C++ 解析json串,需要用到第三方庫(json_vc71_libmtd.lib)。然後,VS2010,建立專案json_read, 配置專案屬性。最後,拷貝下面的程式碼就可以看到效果了。
#include "stdafx.h" #include "../json/include/json.h" int _tmain(int argc, _TCHAR* argv[]) { const char * str = "{\"machineCode\":\"20:20:20:20:20:20:57:4c:31:30:59:31:4d:56\",\"makeTime\":1534485879,\"sysCapacity\":{\"rptMaxNum\":2},\"trialTime\":30}"; printf("json 串:%s\n", str); Json::Reader reader; Json::Value root; if(reader.parse(str,root)) { std::string machineCode = root["machineCode"].asString(); long long makeTime = root["makeTime"].asUInt(); int rptMaxNum = root["rptMaxNum"].asInt();int trialTime = root["trialTime"].asInt(); printf("解析json串之後的值:\n"); printf("machineCode = %s\n",machineCode.c_str()); printf("makeTime = %ld\n",makeTime); printf("rptMaxNum = %d\n",rptMaxNum); printf("trialTIme = %d\n",trialTime); Json::Value & sysCapacity = root["sysCapacity"]; int rpt = sysCapacity["rptMaxNum"].asInt(); printf("rptMaxNum = %d\n",rpt); } system("pause"); return 0; }
附I:json線上格式化工具
附II:專案用到第三方庫資源,有庫,有標頭檔案的時候,建議分類建立一個資料夾,便於閱讀和重用。
附錄III:執行結果