linux下使用C++ Json库
来源:互联网 发布:淘宝千牛怎么开直通车 编辑:程序博客网 时间:2024/05/22 02:26
linux下使用C++ Json库
安装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】Linux下c++使用Json库
- Windows,LINUX下QT使用json-c-0.9
- linux下使用C++ Json库
- linux下使用C++ Json库
- linux下使用C++ Json库
- Linux下Json的使用
- linux下C++/ json库的编译及例程
- linux下c/c++实例 cJSON库解析json字符串
- c使用json-c库
- c使用json-c库
- Json介绍及Linux下的使用
- JSON C库的使用
- json-c库使用总结
- json-c库使用总结
- linux下使用C源代码
- arm-linux下交叉编译json-c-0.9库遇到的编译问题
- linux下c/c++实例之十二cJSON库解析json字符串
- linux下c/c++实例之十二cJSON库解析json字符串
- C语言求2个数中较大数
- 2.2.9同步静态方法和synchronized(class)效果一样
- Java笔记之集合框架Collectio与Map各个子类总结
- JAVA中8八数据类型
- 计算fibnacci数列第n个数的几种方法以及性能比较
- linux下使用C++ Json库
- 如何在centOS6.7上安装jdk、mysql、tomcat,以及部署打包成war包的web项目
- C++中函数指针的使用
- ORM之mybatis与hibernate个人理解
- ERROR C2995 使用类 模板 需要 模板 参数列表
- 关于预编译头 protocol buffer 命名空间的问题
- css3的一些学习笔记
- 【java基础】接口的意义及用法!
- DAS/SAN/NAS之区别