C++安裝JSONCPP


  1. VS2013里新建一個空的控制台程序(用作測試jsoncpp是否可用),名為: TestJSON
  2. 解壓下載好的文件:jsoncpp-src-0.5.0.tar.gz
  3. 利用VS2008打開jsoncpp-src-0.5.0\makefiles\vs71目錄下的jsoncpp.sln,會出現三個Project:jsontest, lib_json, test_lib_json
  4. 在lib_json上 右擊-->Properties-->Configuration Properties-->C/C++-->Code Generation,注意右側的Runtime Library的內容,選擇/MTd點確定,關掉屬性頁。
  5. 編譯lib_json,顯示編譯成功后,在jsoncpp-src-0.5.0\build\vs71\debug\lib_json目錄下會生成一個json_vc71_libmtd.lib,將這個lib拷貝至TestJSON工程目錄下。
  6. 將jsoncpp-src-0.5.0\include\json目錄下的所有.h文件拷貝至TestJSON工程目錄下,並在工程Header Files引入.
  7. 將方法一里的main.cpp添加到工程中,並在工程名上 右擊-->Properties-->Configuration Properties-->C/C++-->Code Generation, 將Runtime Library改成選擇/MTd點確定。
  8. 在工程名上 右擊-->Properties-->Configuration Properties-->Linker-->Input, 在Additional Dependencies里填寫json_vc71_libmtd.lib,然后確定,編譯就行了
    #include <iostream>
    #include <fstream>
    
    #include "json.h"
    
    using namespace std;
    
    int main()
    {
        //根節點
        Json::Value root;
    
        //根節點屬性
        root["name"] = Json::Value("Tsybius");
        root["age"] = Json::Value(23);
        root["sex_is_male"] = Json::Value(true);
    
        //子節點
        Json::Value partner;
    
        //子節點屬性
        partner["partner_name"] = Json::Value("Galatea");
        partner["partner_age"] = Json::Value(21);
        partner["partner_sex_is_male"] = Json::Value(false);
    
        //子節點掛到根節點上
        root["partner"] = Json::Value(partner);
    
        //數組形式
        root["achievement"].append("ach1");
        root["achievement"].append("ach2");
        root["achievement"].append("ach3");
    
        //直接輸出
        cout << "FastWriter:" << endl;
        Json::FastWriter fw;
        cout << fw.write(root) << endl << endl;
    
        //縮進輸出
        cout << "StyledWriter:" << endl;
        Json::StyledWriter sw;
        cout << sw.write(root) << endl << endl;
    
        //輸出到文件
        ofstream os;
        os.open("I:/PersonalInfo.js");
        os << sw.write(root);
        os.close();
    
        return 0;
    }


免責聲明!

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



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