当前位置: 首页 > news >正文

rapidjson 打包过程插入对象

开发过程中遇到一种情况,在打包过程中插入一个字符串(里面是json对象),
官方文档 没看到相关例子,不知道是不是自己粗心没找到。方法RawValue其实是一个通用打包方法,一般情况我们都调用的是String()、Int()等方法,解决了使用rapidjson的最后一个屏障
例如:


rapidjson::StringBuffer strBuf;
rapidjson::Writer<rapidjson::StringBuffer>writer(strBuf);
writer.StartObject();writer.Key("Data");
writer.StartObject();//打包过程中插入一个对象
char c[512] = "{\"a\":\"1111\",\"b\":2,\"c\":true,\"d\":[1,2,3]}";
writer.Key("userdata");
writer.RawValue(c, strlen(c), rapidjson::kObjectType);writer.Key("Language");
writer.String("zh");
writer.Key("Metrology");
writer.Int(1);
writer.Key("Beep");
writer.Bool(true);// 快捷键车型信息保存
writer.Key("F01");
writer.StartObject();
writer.Key("Name");
writer.String("F01");
writer.Key("VehicleId");
writer.String("F01.VehicleId");
writer.Key("Path");
writer.String("F01.Path");
writer.EndObject();writer.Key("Items");
writer.StartArray();
for (map<string, string>::iterator it = mArr.begin(); it != mArr.end(); ++it)
{if (strlen(it->second) <= 0)continue;writer.StartObject();writer.Key("Label");writer.String(it->first.c_str());writer.Key("Value");writer.String(it->second.c_str());writer.EndObject();
}
writer.EndArray();writer.EndObject();
writer.EndObject();return strBuf.GetString();
http://www.lryc.cn/news/368133.html

相关文章:

  • NVeloDocx一个基于NVelocity的word模版引擎
  • 【JavaEE】Spring IoCDI详解
  • Bean的作用域
  • 卡尔曼滤波器例子
  • Web前端发展路线:深度解析与未来展望
  • Unity3D入门基础知识汇总
  • Triton学习笔记
  • 办理公司诉讼记录删除行政处罚记录删除
  • IO流字符流(FileReader与FileWriter)
  • 使用 GPT-4 创作高考作文 2024年
  • 计算机网络 期末复习(谢希仁版本)第5章
  • CSAPP Lab01——Data Lab完成思路
  • 将小爱音箱接入 ChatGPT 和豆包,改造成你的专属语音助手
  • mongodb总概
  • 【设计模式】策略模式(行为型)⭐⭐
  • 《软件定义安全》之三:用软件定义的理念做安全
  • pdf文件在线压缩网站,pdf文件在线压缩工具软件
  • java程序100道21-30
  • 英伟达SSD视觉算法模型训练、转换与部署
  • 智能变电站网络报文记录及故障录波分析装置
  • npm ERR! code E404 npm ERR! 404 Not Found - GET https://registry.npmjs.org/
  • Dockerfille解析
  • 定个小目标之刷LeetCode热题(14)
  • 智慧管道管理:油气管道可视化的领先应用
  • 嵌入式仪器模块:示波器模块和自动化测试软件
  • 组装服务器重装linux系统【idrac集成戴尔远程控制卡】
  • 景区ar互动大屏游戏化体验提升营销力度
  • 苍穹外卖笔记-07-菜品管理-增加、删除、修改、查询分页还有菜品起售或停售状态
  • oracle dataguard 从库 MRP 进程的状态是 WAIT_FOR_GAP
  • 【C语言】轻松拿捏-联合体