日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

VS2010中使用JSONCPP方法

發布時間:2024/4/17 javascript 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VS2010中使用JSONCPP方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

下載jsoncpp后,按ReadMe文檔的說法是要先安裝的,但是安裝比較麻煩。然而事實上,我們并不需要安裝,就可以直接使用。

方法一:直接拷貝源文件。這個方法比較簡單,但不推薦,因為不便于項目管理。

  • VS2010里新建一個空的控制臺程序(用作測試jsoncpp是否可用),名為: TestJSON
  • 解壓下載好的文件:jsoncpp-src-0.5.0.tar.gz
  • 將 jsoncpp-src-0.5.0\include 目錄下的json文件夾拷貝至 TestJSON 工程目錄下
  • 將?jsoncpp-src-0.5.0\src\lib_json 目錄下的所有.h, .cpp 文件全部拷貝至 TestJSON 工程目錄下
  • 在VS201里引入工程目錄下剛剛從?jsoncpp-src-0.5.0 導入的文件,如圖1
  • 在VS2010里新建main.cpp來測試jsoncpp是否可用。代碼見文章末尾main.cpp
  • 方法二:使用靜態鏈接庫

  • VS2010里新建一個空的控制臺程序(用作測試jsoncpp是否可用),名為: TestJSON
  • 解壓下載好的文件:jsoncpp-src-0.5.0.tar.gz
  • 利用VS2010打開jsoncpp-src-0.5.0\makefiles\vs71目錄下的jsoncpp.sln,會出現三個Project:jsontest,?lib_json,?test_lib_json
  • 在lib_json上 右擊-->Properties-->Configuration Properties-->C/C++-->Code Generation,注意右側的Runtime Library的內容,如圖2,看完箭頭所指的東西就可以點確定,關掉屬性頁。
  • 編譯lib_json,顯示編譯成功后,在jsoncpp-src-0.5.0\build\vs71\debug\lib_json目錄下會生成一個json_vc71_libmtd.lib,將這個lib拷貝至TestJSON工程目錄下。
  • 將jsoncpp-src-0.5.0\include\json目錄下的所有.h文件拷貝至TestJSON工程目錄下,并在工程Header Files引入.
  • 將方法一里的main.cpp添加到工程中,并在工程名上 右擊-->Properties-->Configuration Properties-->C/C++-->Code Generation, 將Runtime Library改成圖2箭頭所示內容。
  • 在工程名上?右擊-->Properties-->Configuration Properties-->Linker-->Input, 在Additional Dependencies里填寫json_vc71_libmtd.lib,然后確定,編譯就行了。
  • 圖1:

    圖2:

    ?

    //測試DEMO

    #include <iostream> #include <string> #include "json\json.h"int main(void) {std::string strValue="{\"key1\":\"value1\",\"array\":[{\"key2\":\"value2\"},{\"key2\":\"value3\"},{\"key2\":\"value4\"}]}"; Json::Reader reader;//json解析Json::Value value;//表示一個json格式的對象if(reader.parse(strValue,value))//解析出json放到json中區{std::string out=value["key1"].asString();std::cout<<out<<std::endl;const Json::Value arrayObj=value["array"];//迭代器for (int i=0; i < arrayObj.size();i++) {out=arrayObj[i]["key2"].asString();std::cout<<out;if(i!=arrayObj.size()-1)std::cout<<std::endl;;}}getchar();return 0; }
    #include <iostream> #include <string> #include "json\json.h"int main(void) {//解析Json的方法Json::Value root;//表示一個json格式的對象Json::Value arrayObj;Json::Value item;for(int i=0;i<10;i++){item["key"]=i;arrayObj.append(item);}root["key1"]="value1";root["key2"]="value2";root["array"]=arrayObj;std::string out=root.toStyledString();std::cout<<out<<std::endl;getchar();return 0; }

    輸出結果分別是:

    DEMO1:

    value1
    value2
    value3
    value4

    DEMO2:

    {
    ?? "array" : [
    ????? {
    ???????? "key" : 0
    ????? },
    ????? {
    ???????? "key" : 1
    ????? },
    ????? {
    ???????? "key" : 2
    ????? },
    ????? {
    ???????? "key" : 3
    ????? },
    ????? {
    ???????? "key" : 4
    ????? },
    ????? {
    ???????? "key" : 5
    ????? },
    ????? {
    ???????? "key" : 6
    ????? },
    ????? {
    ???????? "key" : 7
    ????? },
    ????? {
    ???????? "key" : 8
    ????? },
    ????? {
    ???????? "key" : 9
    ????? }
    ?? ],
    ?? "key1" : "value1",
    ?? "key2" : "value2"
    }
    源碼下載:http://download.csdn.net/detail/opzoonzhuzhengke/3728120


    轉載于:https://www.cnblogs.com/lgh1992314/archive/2013/02/15/5835194.html

    總結

    以上是生活随笔為你收集整理的VS2010中使用JSONCPP方法的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。