1. 程式人生 > >C++/MFC使用JSONCPP解析JSON字串

C++/MFC使用JSONCPP解析JSON字串

第一步:首先下載jsoncpp原始碼檔案,程式碼可以從github下載 https://sourceforge.net/projects/jsoncpp/?source=typ_redirect 下載原始碼後解壓後的目錄如下:


再依次開啟\makefiles\vs71,雙擊jsoncpp.sln啟動visual studio,解決方案如下,有三個專案,我們只需要編譯lib_json即可。


第二步:這一步很重要,網上絕大多數這一步都沒有做詳細介紹,本人也是各種嘗試後才知道是怎麼回事,下面具體介紹

① 右鍵專案→屬性→C/C++→輸出檔案→彙編程式輸出→無列表。這主要是為了防止在自己專案編譯中出現 e:\Source\VC\?\json\jsoncpp-src-0.6.0-rc2\src\lib_json\json_value.cpp : fatal error C1083: 無法開啟編譯器生成的檔案:“../../build/vs71/release/lib_json\json_value.asm”: No such file or directory  錯誤,大家可以嘗試一下。

②右鍵專案→屬性→程式碼生成→執行庫,這裡可以根據自己專案的實際情況修改jsoncpp連結庫的屬性,然後進行編譯。

第三步:準備工作完成,現在整合到自己專案中,首先將編譯出來的json_vc71_libmtd.lib連結庫和include資料夾複製到自己專案中,在專案屬性中包含include資料夾,同時連結庫包含json_vc71_libmtd.lib庫即可。

第四步:測試,mfc對話方塊中測試程式碼如下:

CString str = _T("{\"type\":\"NEW_CHECK_REQUEST\"}");
Json::Reader reader;
Json::Value root;
CString temp;
USES_CONVERSION;
char* cJson = T2A(str.GetBuffer(0));
str.ReleaseBuffer();
if (reader.parse(cJson, root))
temp = root["type"].asCString();
AfxMessageBox(temp);

結果截圖:


大功告成!

整個MFC專案包括JSONCPP原始碼檔案可以從這裡下載:http://download.csdn.net/download/youyicc/10112622

相關推薦

C++ Jsoncpp 解析json字串

使用方法 下載原始碼解壓之後得到jsoncpp-src-0.5.0資料夾,我們只需要jsoncpp的標頭檔案和cpp檔案,其中jsonscpp的標頭檔案位於jsoncpp-src-0.5.0\include\json,jsoncpp的cpp檔案位於jsoncpp-src-0.5.0\sr

C# webapi 解析 json字串

步驟一:最好是自己建立一個和json包中欄位一樣的實體類接收資料(推薦),也可以用原有的實體類 using System; using System.Collections.Generic; using System.Linq; using System.Threading

C++ jsoncpp解析json字串

使用方法 下載原始碼解壓之後得到jsoncpp-src-0.5.0資料夾,我們只需要jsoncpp的標頭檔案和cpp檔案,其中jsonscpp的標頭檔案位於jsoncpp-src-0.5.0\include\json,jsoncpp的cpp檔案位於jsonc

C++ 使用jsoncpp 封裝及解析 json字串(包含複雜陣列)

#include <json/json.h> #include <string> #include <iostream> using namespace std; int main() { //std::string strValue = "{\"na

C#解析JSON字串總結

JSON檔案讀取到記憶體中就是字串,.NET操作JSON就是生成與解析JSON字串。 操作JSON通常有以下幾種方式: 1. 原始方式:按照JSON字串自己來解析。 2. 通用方式【★★★★★】:這種方式是使用開源的類庫Newtonsoft.Json(下載地址ht

C++/MFC使用JSONCPP解析JSON字串

第一步:首先下載jsoncpp原始碼檔案,程式碼可以從github下載 https://sourceforge.net/projects/jsoncpp/?source=typ_redirect 下載原始碼後解壓後的目錄如下: 再依次開啟\makefiles\vs71,雙

C++解析JSON字串

JSON是JavaScript Object Notation的簡稱,一種輕量級的資料交換格式;是Web互動中最流行的資料交換格式之一。 下面是最典型的JSON資料格式的例子: {"Key1":[{"cccc":"5687"},"123456",{"tttt":[{"aaa

cJSON庫(構建json解析json字串)-c語言

1、c語言獲取json中的資料。 1.1、先要有cJOSN庫,兩個檔案分別是cJSON.c和cJSON.h。 1.2、感性認識 char * json = "{ \"json\" : { \"id\"

jackson解析json字串,首字母大寫會自動轉為小寫

問題 樓主碰到的問題是,在實體類和表中定義的某個欄位為RMBPrice,首字母大寫,sql查詢出來的列名也是大寫的RMBPrice,但是使用jquery的datatables初始化列時,卻出錯。那一行的程式碼如下: {"name": "RMBPrice", "data": "RM

C# JObject將json字串轉為json物件

static void Main(string[] args) { string json = "{\"name\": \"測試\",\"mobile\": \"15341234699\",\"city\": {\"province\": \"內蒙古自治區\"

C 物件與JSON字串互相轉換的幾種方式

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

javascript中eval解析JSON字串

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Power query解析json字串轉化為表格和將excel表格生成json格式字串

     今天講解一下在excel裡面利用Power query生成json格式的字串。在power query中處理json的函式有兩個。一個是Json.Document()函式,用於解析json字串,將其轉化為list或者record物件。這個在網抓的時候我們多用到

Boost ptree 解析json字串 多執行緒下程式crash

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

gson解析json字串

String retJson = HttpRequestUtil.sendGet1(url, auth, null); JsonParser parser = new JsonParser(); JsonObject ret = parser.parse(retJson).getAsJ

C++ boost 解析 Json

轉自https://blog.csdn.net/freeking101/article/details/54694025 property_tree可以解析ini,xml,json,info等格式的文字 以下示例是解析json格式的文字 #include <iostream> #

關於fastJson解析Json字串的問題: JSONException: exepct '[', but {

關於fastJson解析Json字串的問題。JSONException: exepct '[', but { 1種原因是字串中屬性沒有雙引號  如 [{a:1,b:c},{a:2,b:d}] 這樣會造成該錯誤。 應為:[{"a":1,"b":c},{"a":2,"b"

動態解析JSON字串,將資料存入資料庫

我在使用netty時候,由於不同裝置發出的JSON字串不一樣,我需要一個動態解析JSON字串方法去解決,我的思路是先將json字串通過gson這個類轉成map,由於在執行期間無法得知T的具體型別,對這個類的物件進行序列化和反序列化都不能正常進行。Gson通過藉助TypeTok

java解析json字串

json現在也被作為一種主要的資料交換格式,不僅在網頁上能用還可以用到類似智慧手機這樣的裝置。和xml比起來雖然可讀性差了點,但是在傳輸的時候體積小,對於IOS裝置也比xml方便的多。 1.下面來看下這段json字串,生成這樣的字串可以使用JSON開發包也可以自己拼接字串

java解析json字串的應用

檔案alarmPub.txt中存在如下json串 {     "data": [         {             "oriId": "oid",             "alarmObj": "alarm obj",             "alarmObj