欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

C++中怎么定義JsonCpp庫

這期內容當中小編將會給大家?guī)碛嘘PC++中怎么定義JsonCpp庫,文章內容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

創(chuàng)新互聯(lián)是一家專業(yè)提供上思企業(yè)網(wǎng)站建設,專注與網(wǎng)站建設、成都網(wǎng)站制作、H5技術、小程序制作等業(yè)務。10年已為上思眾多企業(yè)、政府機構等服務。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡公司優(yōu)惠進行中。

JsonCpp簡介

JsonCpp主要包含三種類型的class:Value Reader Writer。

jsoncpp中所有對象、類名都在namespace json中,包含json.h即可。

注意: Json::Value只能處理ANSI類型的字符串,如果C++程序使用Unicode編碼的,***加一個Adapt類來適配。

下載和編譯

本文運行環(huán)境是: Redhat 5.5 + g++version 4.6.1 + GNU Make 3.81 + jsoncpp-0.5.0

下載地址是:http://sourceforge.net/projects/jsoncpp/

解壓之后得到jsoncpp-src-0.5.0文件夾,我們只需要jsoncpp的頭文件和cpp文件,其中jsonscpp的頭文件位于jsoncpp-src-0.5.0includejson,jsoncpp的cpp文件位于jsoncpp-src-0.5.0srclib_json。

這里我列出我們的工作目錄:

jsoncpp/ //工作目錄

|-- include //頭文件根目錄

|  |-- json //json頭文件,對應jsoncpp-src-0.5.0includejson

|-- src //cpp源碼文件根目錄

|-- json //jsoncpp源碼文件,對應jsoncpp-src-0.5.0srclib_json

|-- main.cpp //我們的主函數(shù),調用jsoncpp的示例代碼

|-- makefile //makefile,不用我們多說了吧,不懂請看我博客的makefile***實踐

反序列化Json對象

假設有一個json對象如下:

{  "name": "json″,  "array": [  {  "cpp": "jsoncpp" },  {  "java": "jsoninjava" },  {   "php": "support" }  ]  }

我們要實現(xiàn)這個json的反序列號代碼如下:

voidreadJson() {  usingnamespacestd;  std::stringstrValue = "{\"name\":\"json\",\"array\":[{\"cpp\":\"jsoncpp\"},{\"java\":\"jsoninjava\"},{\"php\":\"support\"}]}";  Json::Reader reader;  Json::Value value;  if(reader.parse(strValue, value))  {  std::stringout= value["name"].asString();  std::cout <<out<<std::endl;  constJson::Value arrayObj = value["array"];   for(unsigned inti = 0;i <arrayObj.size(); i++)  {  if(!arrayObj[i].isMember("cpp"))  continue;  out= arrayObj[i]["cpp"].asString();  std::cout <<out;  if(i != (arrayObj.size() - 1))  std::cout <<std::endl;   }  }  }

序列化Json對象

voidwriteJson() {  usingnamespacestd;  Json::Value root;  Json::Value arrayObj;  Json::Value item;  item["cpp"] = "jsoncpp";  item["java"] = "jsoninjava";  item["php"] = "support";  arrayObj.append(item);  root["name"] = "json";  root["array"] = arrayObj;  root.toStyledString();  std::stringout= root.toStyledString();  std::cout <<out<<std::endl;   }

上述就是小編為大家分享的C++中怎么定義JsonCpp庫了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

新聞標題:C++中怎么定義JsonCpp庫
本文網(wǎng)址:http://www.chinadenli.net/article12/gjcpgc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供響應式網(wǎng)站面包屑導航關鍵詞優(yōu)化域名注冊網(wǎng)站策劃網(wǎng)站收錄

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

外貿網(wǎng)站建設