亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

C++構造和解析Json的使用示例

2020-05-23 13:23:15
字體:
來源:轉載
供稿:網友

概述

JSON是一種輕量級的數據交互格式,易于人閱讀和編寫,同時也易于機器解析和生成,并有效地提升網絡傳輸效率,實際項目中經常用到,相比xml有很多優點,問問度娘,優點一籮筐。

第三方庫

json解析選用jsoncpp作為第三方庫,jsoncpp使用廣泛,c++開發首選。

jsoncpp目前已經托管到了github上,地址:https://github.com/open-source-parsers/jsoncpp

使用

使用c++進行構造json和解析json,選用vs2010作為IDE。工程中使用jsoncpp的源碼進行編譯,沒有使用jsoncpp的庫,為方便大家使用把dll和lib庫也放到了我的工程jsoncpplib文件夾下,有需要的可以直接引用庫。

待解析的json數據格式如下圖:

C++,構造,解析,Json

/********************************************************Copyright (C), 2016-2017,FileName: mainAuthor: woniu201Description:use jsoncpp src , not use dll, but i also provide dll and lib.********************************************************/#include "stdio.h"#include <string>#include "jsoncpp/json.h"using namespace std;/************************************@ Brief: read file@ Author: woniu201 @ Return: file data ************************************/char *getfileAll(char *fname){ FILE *fp; char *str; char txt[1000]; int filesize; if ((fp=fopen(fname,"r"))==NULL){ printf("open file %s fail /n",fname); return NULL; } fseek(fp,0,SEEK_END);  filesize = ftell(fp); str=(char *)malloc(filesize); str[0]=0; rewind(fp); while((fgets(txt,1000,fp))!=NULL){ strcat(str,txt); } fclose(fp); return str;}/************************************@ Brief: write file@ Author: woniu201 @ Return:   ************************************/int writefileAll(char* fname,const char* data){ FILE *fp; if ((fp=fopen(fname, "w")) == NULL) { printf("open file %s fail /n", fname); return 1; } fprintf(fp, "%s", data); fclose(fp); return 0;}/************************************@ Brief: parse json data@ Author: woniu201 @ Return:   ************************************/int parseJSON(const char* jsonstr){ Json::Reader reader; Json::Value resp; if (!reader.parse(jsonstr, resp, false)) { printf("bad json format!/n"); return 1; } int result = resp["Result"].asInt(); string resultMessage = resp["ResultMessage"].asString(); printf("Result=%d; ResultMessage=%s/n", result, resultMessage.c_str()); Json::Value & resultValue = resp["ResultValue"]; for (int i=0; i<resultValue.size(); i++) { Json::Value subJson = resultValue[i]; string cpuRatio = subJson["cpuRatio"].asString(); string serverIp = subJson["serverIp"].asString(); string conNum = subJson["conNum"].asString(); string websocketPort = subJson["websocketPort"].asString(); string mqttPort = subJson["mqttPort"].asString(); string ts = subJson["TS"].asString(); printf("cpuRatio=%s; serverIp=%s; conNum=%s; websocketPort=%s; mqttPort=%s; ts=%s/n",cpuRatio.c_str(), serverIp.c_str(),  conNum.c_str(), websocketPort.c_str(), mqttPort.c_str(), ts.c_str()); } return 0;}/************************************@ Brief: create json data@ Author: woniu201 @ Return:   ************************************/int createJSON(){ Json::Value req; req["Result"] = 1; req["ResultMessage"] = "200"; Json::Value object1; object1["cpuRatio"] = "4.04"; object1["serverIp"] = "42.159.116.104"; object1["conNum"] = "1"; object1["websocketPort"] = "0"; object1["mqttPort"] = "8883"; object1["TS"] = "1504665880572"; Json::Value object2; object2["cpuRatio"] = "2.04"; object2["serverIp"] = "42.159.122.251"; object2["conNum"] = "2"; object2["websocketPort"] = "0"; object2["mqttPort"] = "8883"; object2["TS"] = "1504665896981"; Json::Value jarray; jarray.append(object1); jarray.append(object2); req["ResultValue"] = jarray; Json::FastWriter writer; string jsonstr = writer.write(req); printf("%s/n", jsonstr.c_str()); writefileAll("createJson.json", jsonstr.c_str()); return 0;}int main(){ char* json = getfileAll("parseJson.json"); parseJSON(json); printf("===============================/n"); createJSON(); getchar(); return 1;}

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對VEVB武林網的支持。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
成人xvideos免费视频| 欧美性理论片在线观看片免费| 欧美精品18videosex性欧美| 精品夜色国产国偷在线| 亚洲精选一区二区| 这里精品视频免费| 久久天天躁日日躁| 2019中文字幕全在线观看| 日韩av手机在线看| 日日骚久久av| 亚洲国产精彩中文乱码av| 久久久天堂国产精品女人| 亚洲人成亚洲人成在线观看| 色99之美女主播在线视频| 亚洲999一在线观看www| 红桃av永久久久| 国内偷自视频区视频综合| 精品福利免费观看| 亚洲xxx视频| 国产精品视频男人的天堂| 51视频国产精品一区二区| 午夜精品久久久久久久99黑人| 亚洲韩国欧洲国产日产av| 久久成年人视频| 狠狠躁夜夜躁久久躁别揉| 91精品国产高清自在线看超| 欧洲亚洲免费视频| 亚洲一区二区三区乱码aⅴ蜜桃女| 中文字幕日韩欧美在线视频| 日韩在线观看成人| 91精品91久久久久久| 亚洲欧美自拍一区| 夜夜嗨av色一区二区不卡| 国产一区二区三区在线观看视频| 在线电影av不卡网址| 国产精品免费久久久| 国产丝袜一区二区三区| 亚洲人成毛片在线播放| 最近2019中文免费高清视频观看www99| 亚洲欧美日韩图片| 欧美裸体xxxx极品少妇软件| 日韩在线视频观看| 成人av在线亚洲| 国产精品日韩在线| 大桥未久av一区二区三区| 国产精品成人免费电影| 亚洲精品suv精品一区二区| 亚洲a一级视频| 欧美又大粗又爽又黄大片视频| 亚洲第一福利网| 亚洲男人天堂视频| 欧美激情aaaa| 亚洲老头同性xxxxx| 一本色道久久88综合日韩精品| 国产精品成人播放| 精品亚洲va在线va天堂资源站| 欧美一级淫片播放口| 久久久精品欧美| 中文字幕精品网| 国模精品视频一区二区三区| 亚洲欧美第一页| 久久久女人电视剧免费播放下载| 国产精品久久久久久久久久三级| 国产91久久婷婷一区二区| 色99之美女主播在线视频| 北条麻妃99精品青青久久| 久久琪琪电影院| 国产成人精品在线播放| 国产在线拍揄自揄视频不卡99| 中文字幕久久久| 精品一区精品二区| 欧美裸身视频免费观看| 国产精品久久久av久久久| 综合欧美国产视频二区| 中文字幕在线日韩| 国产成人福利夜色影视| 亚洲高清不卡av| 欧美日韩亚洲精品内裤| 国产婷婷成人久久av免费高清| 欧美精品激情视频| 日韩国产精品一区| 九九热精品视频在线播放| 午夜精品久久久久久久男人的天堂| 性色av一区二区三区| 久久久久亚洲精品| 久久久人成影片一区二区三区| 欧美精品videosex极品1| 欧美极度另类性三渗透| 欧美日韩中文字幕日韩欧美| 欧美成人免费小视频| 精品国产美女在线| 亚洲韩国欧洲国产日产av| 精品女同一区二区三区在线播放| 久久精品中文字幕电影| 久久久国产精彩视频美女艺术照福利| 欧美性色xo影院| 91久久精品国产| 日本亚洲精品在线观看| 国产成人精品免费视频| 欧美做爰性生交视频| 欧美激情在线一区| 国产精品中文字幕在线| 亚洲精品久久久久久久久久久| 欧美激情亚洲一区| 精品一区二区三区三区| 一区二区成人精品| 欧美另类高清videos| 日韩欧美国产骚| 亚洲精品v天堂中文字幕| 精品国产老师黑色丝袜高跟鞋| 国产精品专区第二| 亚洲第一精品夜夜躁人人爽| 国产成人自拍视频在线观看| 亚洲男人的天堂在线| 久久成人人人人精品欧| 一区二区国产精品视频| 激情懂色av一区av二区av| 亚洲乱码一区av黑人高潮| 国产欧美久久一区二区| 久久久女人电视剧免费播放下载| 欧美亚洲另类在线| 欧美成人sm免费视频| 亚洲国产精彩中文乱码av| 欧美亚洲视频在线观看| 成人一区二区电影| 成人网欧美在线视频| 国产+人+亚洲| 在线观看欧美日韩国产| 成人av电影天堂| 国产精品视频1区| 亚洲女人天堂色在线7777| 一区二区三区久久精品| 国产日韩欧美在线播放| 日韩成人激情影院| 91精品国产乱码久久久久久久久| 欧美视频二区36p| 91福利视频网| 日韩精品在线观看网站| 日韩精品亚洲视频| 精品亚洲一区二区三区在线观看| 欧美午夜美女看片| 懂色aⅴ精品一区二区三区蜜月| 欧美在线亚洲一区| 一区二区成人精品| 久久久天堂国产精品女人| 日韩高清有码在线| 亚洲欧美国内爽妇网| 日韩综合中文字幕| 久久久久久久久久久国产| 奇米4444一区二区三区| 欧美日本高清一区| 中文字幕日本欧美| 欧美猛交免费看| 日韩亚洲第一页| 久久久视频免费观看| 国产亚洲精品久久久久久| 亚洲黄页网在线观看| 国产精品流白浆视频| 欧美成人免费播放| 国产69精品久久久久久| 国产成人+综合亚洲+天堂| 中文字幕日韩在线视频| 亚洲精品久久久一区二区三区| 性色av一区二区三区在线观看|