安装Json库

1、下载JsonCpp
http://sourceforge.net/projects/jsoncpp/files/

2、下载scons
http://sourceforge.net/projects/scons/files/scons/2.1.0/scons-2.1.0.tar.gz/download

3、解压scons-2.1.0.tar.gz

tar -zvxf scons-2.1.0.tar.gz
我的解压到了/opt/JSON/scons-2.1.0目录下了

4、进入到解压目录scons-2.1.0下面,执行命令:

sudo python setup.py install

5、解压jsconcpp

tar -zvxf jsoncpp-src-0.5.0.tar.gz
我的解压到了/opt/JSON/jsoncpp-src-0.5.0下

6、进入到jsoncpp解压目录下,执行命令:

sudo scons platform=linux-gcc

7、将/jsoncpp-src-0.5.0/include/目录下的json文件夹拷贝到/usr/include/

8、将jsoncpp-src-0.5.0/libs/linux-gcc-4.9.1/目录下的libjson_linux-gcc-4.9.1_libmt.a 拷贝到/usr/local/lib/下,并为了方便使用,将其重命名为libjson.a

9、测试代码

//json.cpp
#include<iostream>
#include<json/json.h>

using namespace std;

int main()
{
string test="{\"id\":1,\"name\":\"kurama\"}";
Json::Reader  reader;
Json::Value   value;

if(reader.parse(test,value))
{
if(!value["id"].isNull())
{
cout<<value["id"].asInt()<<endl;
cout<<value["name"].asString()<<endl;
}
}
return 0;
}

编译:需指定链接库(刚才重命名后的那个文件):

g++ json.cpp -ljson

输出:

“以上是综合网上多篇文章整理的,在此记录,防止遗忘”

基本使用示例

int   mark = 1;
stringpwd("123456");

//json的字符串格式
string test="{\"id\":1,\"name\":\"kurama\"}";

//reader用于将字符串格式转化为json
Json::Reader  reader;
//定义json变量
Json::Value   value;

if(reader.parse(test,value))//字符串转json
{
if(!value["id"].isNull())
{
cout<<value["id"].asInt()<<endl;
//asString()用于转化为string,直接输出是带双引号的
cout<<value["name"].asString()<<endl;
}
}

Json::Value  json;
//初始化json
json["mark"] = Json::Value(mark);
json["pass"] = Json::Value(pwd);

cout<<json["mark"].asInt()<<json["pass"].asString()<<endl;

string   s;
//json转字符串
s = json.toStyledString();

cout<<s<<endl;
Json::Value  js;
reader.parse(s,js);
cout<<js["pass"].asString()<<endl;

//转化为不带格式的字符串
Json::FastWriter writer; 
std::string out = writer.write(js);

CentOS 6.3下PHP编译安装JSON模块报错解决:http://www.linuxdiyf.com/linux/10140.html

几款好的C/C++编译器(编译器而非IDE):http://www.linuxdiyf.com/linux/14086.html

Linux下搭建C/C++开发环境(GTK):http://www.linuxdiyf.com/linux/11185.html

Linux中安装Eclipse进行C/C++开发:http://www.linuxdiyf.com/linux/10129.html

linux下使用C++ Json库相关推荐

  1. Linux下的静态链接库和动态链接库编程

    Linux下的静态链接库和动态链接库编程 参考: Linux下的静态链接库和动态链接库编程 - Histring - 博客园 Mac下静态库和动态库的创建和使用_C/C++_vincent2610的专 ...

  2. linux里c库和gnu c库,Linux下的C的库文件和头文件有什么区别-

    Linux下的C的库文件和头文件有什么区别- (2012-04-10 01:16:57) 标签: linux 杂谈 Linux下的C的库文件和头文件有什么区别?刚刚接触 这里有点没搞清楚 如果按我的理 ...

  3. linux动态库路径生效,Linux下如何解决动态库的链接问题

    原标题:Linux下如何解决动态库的链接问题 静态库是一种以空间换取时间和移植性的做法,一些情况下确实有着一定的意义,但是一些情况下,我们自己编写的简单项目,在绝大多数的机器上不存在移植性问题,是没有 ...

  4. linux如何编译boost指定库,linux下编译安装boost库

    linux下编译安装boost库 先看一下系统环境 Linux o-pc 3.19.0-22-generic #22-Ubuntu SMP Tue Jun 16 17:15:15 UTC 2015 x ...

  5. Linux下安装自定义字体库

    Linux下安装自定义字体库 第一步.在Windos环境下找到字体库 如:C:\Windows\Fonts 第二步.找到Linux下字体库 如:/usr/share/fonts/chinese 第三步 ...

  6. Linux下ibus输入法词库扩展

    文章目录 一.骡子 二.直接上教程 三.目前支持的词汇(如果你找到了比较全的词库,希望能够得到你的分享) 四.补充:自己添加词库 Linux下ibus输入法词库扩展 一.骡子 面向百度编程已经给出了很 ...

  7. Linux下的静态链接库和动态链接库

    Linux下的静态链接库和动态链接库 零.链接库概述 Linux下得库有动态与静态两种,动态通常用.so为后缀,静态用.a为后缀.面对比一下两者: 静态链接库:当要使用时,连接器会找出程序所需的函数, ...

  8. linux的oracle怎么建库,linux下oracle手工建库过程

    1.创建目录 $ORACLE_BASE/admin/ $ORACLE_BASE/oradata $ORACLE_BASE/flash_recovery_area 2.建初始化参数文件 cd   $OR ...

  9. linux下Qt调用C++库文件(.so)程序实现

    文章目录 主要内容 一.编程环境及实现方法 二.项目实现 1.创建项目 2.导入库文件 三.项目中遇到的问题 总结 主要内容 如标题所示,在linux下使用qtcreator创建项目调用C++库文件, ...

最新文章

  1. 三星嵌入式开发平台 三星Cortex-A9 4412 POP与SCP对比
  2. VSCode 启动 Vue 项目 npm install 报错
  3. Content management workbench DMWB
  4. 机器学习——支持向量机SVM实例(兵王问题,SVM求解步骤以及思路,不求解不编程)
  5. 在ASP.NET Core中使用百度在线编辑器UEditor
  6. windows10环境tensorflow下载安装
  7. jenkins pipeline之如何串联多个Job
  8. 用vue手脚架生成的项目直接修改时.vue文件后,保存编译就报一大堆的错,这是咋回事呢?
  9. 【渝粤教育】国家开放大学2018年秋季 1131t卫生经济学 参考试题
  10. 电力系统技术导则_《电力系统安全稳定导则(征求意见稿)》发布
  11. apt-get update “the following signatures couldn’t be verified because the public key is not avail
  12. opencv曝光算法_【OPENCV】高反差保留算法
  13. 细致的网站开发流程有哪些呢?
  14. cf英文名字格式好看的_cf好看的英文名字格式:、I (~) you ?
  15. web前端零基础html5
  16. tushare更新,get_k_data支持分时k线数据,可替代以前的get_hist_data
  17. Mqtt ----心跳机制 长链接 ping
  18. Redis的清洁——定期删除+惰性删除+内存淘汰策略
  19. Java官方文档索引
  20. 安装MySQL之步骤~

热门文章

  1. Java填坑系列之SparseArray
  2. nc 传输文件和目录
  3. OWASP TOP 10
  4. webpack从零开始第2课: 配置文件
  5. 为 Hyper-V 配置外部网络
  6. 单个APP接入多个微信支付宝支付的一种解决方案
  7. Django 前后台的数据传递
  8. Linux系统基础调优
  9. 解析软件测试需要变革的因素
  10. Jquery通过ajax请求NodeJS返回json数据