C++ 解析json串


首先, 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:運行結果

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM