jsoncpp

一、在ubuntu下使用Json.cpp,

1、包括头文件 <json/json.h>

2、-ljson

二、Json(JavaScript Object Notation )是一种轻量级的数据交换格式。简而言之,Json组织形式就和python中的字典, C/C++中的map一样,是通过key-value对来组织的,key是任意一个唯一字符串,value可以是bool,int,string 或者嵌套的一个json。

Json::value root(Json::intvalue/objectvalue);

三、添加json成员方式  :

                            普通类型 root["str"] = int型/"string型”/bool型;

                             数组类型 root["str1"].append(支持的类型);

 四、对Json进行解析:

                            Json::Reader reader;

                            reader.parse(文件描述符/字符串指针,root); //解析错误返回 0;

                            解析成功后可以通过root的key值进行查看,如root[key1][key2],可以asINT等转换格式。

五、把Json::Value对象写到string对象中:

Json::Writer 和 Json::Reader相反,是把Json::Value对象写到string对象中,而且Json::Writer是个抽象类,被两个子类Json::FastWriter和Json::StyledWriter继承。
简单来说FastWriter就是无格式的写入,这样的Json看起来很乱没有格式,而StyledWriter就是带有格式的写入,看起来会比较友好。

    Json::FastWriter fwr;        string str = fwr.write(root);
    Json::StyledWriter swr;    string str = swr.write(root);

六、其他一些对json的操作

     1、判断key是否存在    bool Json::Value::isMember ( const std::string &  key) const;如 root.isMember("record");

     2、判断json中某key值是否为null; bool Json::Value::isNull ( ) const;   当差Null的key值不存在时会生成一个值为Null的key。

     3、得到json中所有的key值:Value::Members Json::Value::getMemberNames ( ) const;返回值Value::Members是string的数           组。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值