#include "json/document.h"
#include "json/prettywriter.h"
#include "json/stringbuffer.h"

这是生成数组的

void test()
{string info = "{\"id\":\"1111111\",\"cards\":[0,1,2,3,4,5,6,7,8,9],\"jiaoDiZhu\":\"\"}";rapidjson::Document doc;doc.Parse<0>(info.c_str());rapidjson::Value &dataArray = doc["cards"];if (dataArray.IsArray()){for (rapidjson::SizeType i = 0; i < dataArray.Size(); i++){const rapidjson::Value& object = dataArray[i];printf("%d\n",object.GetInt());}}
}
void test()
{//read jsonstring updateInfo = "{\"UpdateInfo\":[{\"url\":\"aaaa.ipa\",\"platform\":\"ios\"}]}";rapidjson::Document doc;doc.Parse<0>(updateInfo.c_str());rapidjson::Value &dataArray = doc["UpdateInfo"];if (dataArray.IsArray()){for (int i = 0; i < dataArray.Size(); i++){const rapidjson::Value& object = dataArray[i];string url = object["url"].GetString();string platform = object["platform"].GetString();}}//write json
    rapidjson::Document document;document.SetObject();rapidjson::Document::AllocatorType& allocator = document.GetAllocator();rapidjson::Value array(rapidjson::kArrayType);for (int i = 0; i < 10; i++){rapidjson::Value object(rapidjson::kObjectType);object.AddMember("id", 1, allocator);object.AddMember("name", "test", allocator);object.AddMember("version", 1.01, allocator);object.AddMember("vip", true, allocator);object.SetInt(i);array.PushBack(object, allocator);}document.AddMember("title", "PLAYER INFO", allocator);document.AddMember("players", array, allocator);rapidjson::StringBuffer buffer;rapidjson::Writer<rapidjson::StringBuffer> writer(buffer);document.Accept(writer);auto out = buffer.GetString();log("out: %s", out);
}

下面是单个的

void readTest()
{char json[] = "{\"carriorName\":\"日本电信\",\"deviceName\":\"iPhone5,2\",\"osName\":\"android\",\"osVersion\":\"8.1\",\"appId\":\"com.mmcshadow.doudizhu\",\"versionName\":\"1.0\",\"versionCode\":\"1.0\",\"deviceId\":\"11111111\"}";rapidjson::Document d;d.Parse<0>(json);printf("%s\n", d["carriorName"].GetString());printf("%s\n", json);
}
void writeTest()
{rapidjson::Document document;rapidjson::Document::AllocatorType& allocator = document.GetAllocator();rapidjson::Value root(rapidjson::kObjectType);root.AddMember("name", "哥伦布啊", allocator);root.AddMember("gold",1234,allocator);rapidjson::StringBuffer buffer;rapidjson::Writer<rapidjson::StringBuffer> writer(buffer);root.Accept(writer);std::string reststring = buffer.GetString();std::cout << reststring << std::endl;
}

rapidjson的read和write的sample相关推荐

  1. jsoncpp和rapidjson哪个好用?

    作者:Milo Yip 链接:http://www.zhihu.com/question/23654513/answer/46157616 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非 ...

  2. RapidJSON v1.1.0 发布简介

    时隔 15.6 个月,终于发布了一个新版本 v1.1.0. 新版本除了包含了这些日子收集到的无数的小改进及 bug fixes,也有一些新功能.本文尝试从使用者的角度,简单介绍一下这些功能和沿由. P ...

  3. 开源JSON库Rapidjson与cJSON对比

    项目需要解析和构造JSON格式的数据,由于项目使用C++编程,所以比较了一下基于C/C++的开源JSON解析库.当前,差不多40多种基于C/C++的开源JSON库在使用,经过一番比较,最终决定在Rap ...

  4. dataframe sample 采样,抽样

    20220324 https://blog.csdn.net/DSTJWJW/article/details/90667570 不重复随机抽样 20211223 # 读取数据集 test_data_a ...

  5. RxJava 过滤操作符 throttleFirst 与 throttleLast 以及 sample

    看文档发现 throttleFirst 与 throttleLast 以及 Sample 都跳到同一个界面Sample throttleFirst :在某段时间内,只发送该段时间内第1次事件(假如一个 ...

  6. RapidJSON简介及使用

    RapidJSON是腾讯开源的一个高效的C++ JSON解析器及生成器,它是只有头文件的C++库.RapidJSON是跨平台的,支持Windows, Linux, Mac OS X及iOS, Andr ...

  7. oracle导出客户机使用us7a,导入 Oracle WORLD SAMPLE

    Import WORLD SAMPLE C:\oraclexe\app\oracle\product\11.2.0\server\bin>imp system/oracle Import: Re ...

  8. SQL2K数据库开发二之查看和修改Sample数据库

    1.在SQL Server 企业管理器中,选择"数据库"节点,右击sample 数据库图标,在弹出的菜单中选择"属性". 2."常规"页面显 ...

  9. python实现洗牌算法_洗牌算法及 random 中 shuffle 方法和 sample 方法浅析

    对于算法书买了一本又一本却没一本读完超过 10%,Leetcode 刷题从来没坚持超过 3 天的我来说,算法能力真的是渣渣.但是,今天决定写一篇跟算法有关的文章.起因是读了吴师兄的文章 <扫雷与 ...

最新文章

  1. Hololens2-Unity3D开发(一)
  2. vscode remote ssh 远程开发免密登陆方法
  3. GDCM:从VR查找标签的测试程序
  4. 计算机辅助药物设计局限,计算机辅助药物设计高效低耗
  5. MySql 事务+异常处理+异常抛出
  6. springboot+Druid+mybatis整合
  7. DPDK examples ethtool-app完全注释
  8. 你不知道的JS之作用域和闭包(三)函数 vs. 块级作用域
  9. 排序算法--选择排序
  10. 水晶头(网线)的线序
  11. 操作系统-页面置换算法
  12. 从三大方面,分析 to B和 to C产品的区别与联系
  13. POJ3254 状压DP模板
  14. 开发者的如何优雅的使用OSX
  15. 如何获取请求端真实IP和远程主机IP详解
  16. 使用Qt开发中国象棋(六):将军和死棋检测
  17. 苏州大学2021年全日制博士学位研究生招生简章
  18. 任正非让寒气传递到每个人身上,互联网寒冬程序员该如何破冰?
  19. bitbucket安装
  20. 流媒体服务器(17)—— 流媒体开源服务 MediaSoup 初识

热门文章

  1. 配置解决中文乱码的过滤器
  2. DateFormat类的format方法和parse方法
  3. 垃圾回收机制之复制算法
  4. html5决战沙城源码,决战沙城h5符文玩法介绍 怎么获得完美首通
  5. ubuntu tail、history|grep 、alias命令
  6. 面试题:彻底理解ThreadLocal 索引的利弊 背1
  7. zookeeper初探二 windows环境搭建伪集群
  8. apache poi 解析excel
  9. 数据库树状结构的关系表的删除方案
  10. 网摘--2014年5月12日