问题标签 [rapidjson]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
34966 浏览

c++ - 使用 rapidjson 检索 JSON 字符串中的嵌套对象

我需要在 JSON 字符串中检索嵌套对象,我正在尝试使用 rapidjson 来完成。我发现的只是如何检索数组和基本类型,而不是子对象。我创建了以下玩具示例,它给出了一个错误:

这是执行时的输出:

如何检索内部对象以继续解析?谢谢。

编辑:我需要的是获取内部对象的字符串表示,这样我就可以调用另一个函数来解析它。

编辑 2:允许将内部对象作为字符串检索的代码:

0 投票
1 回答
11480 浏览

c++ - 使用 rapidjson 进行字符串化

我正在使用 socket.io-clientpp,https://github.com/ebshimizu/socket.io-clientpp,它使用 rapidjson。

当收到一个事件时,我的函数被调用:

值是一个 rapidjson 值。我的问题是我看到将其字符串化的唯一方法是使用 Document 类。但是要将值放入文档中,所有函数都采用非常量引用,例如:

我习惯了 jsonpp,我想我错过了一些愚蠢的东西。问题很简单:如何对 const rapidjson 值进行字符串化?

0 投票
3 回答
6565 浏览

c++ - Rapidjson 输出到字符串不起作用

我正在尝试使用 rapidjson 将自身输出到字符串以保存到数据库,使用以下代码:

其中 rest 是一个 rapidjson::Document。

但是我收到以下错误:

这很奇怪,因为 rapidjson 的作者在回答之前的 SO 问题时推荐了这种方法。

0 投票
0 回答
460 浏览

c++ - rapidjson 中是否已经嵌入了序列化/反序列化 std::pair 的方法?

rapidjson 中是否已经嵌入了序列化/反序列化 std::pair 的方法?我正在尝试序列化点数组但没有创建自定义对象(目前我在数组中序列化,x坐标在偶数位置,y坐标在数组的奇数位置,但更优雅的是对数组)

0 投票
4 回答
15010 浏览

c++ - 如何使用来自 std::string 的 rapidjson 进行解析?

如何使用来自 std::string 的 rapidjson 进行解析?我正在尝试(json字符串有效,我在jsonlint.com上检查过)

contentString是我的json std::string,但是当我开始时我总是得到错误(return 1)。我也试过没有 size()+1 和 '\0' 但没有(绝望的测量编程)。谁能帮我 ?

0 投票
2 回答
682 浏览

c++ - 未为 rapidjson 声明 _snprintf?

尝试在 CentOS 6.4 上构建时出现以下错误:此处传递的唯一标志是 -Wall 和 -std=c++11,使用 gcc 4.7.2

/usr/local/include/rapidjson/writer.h:在成员函数'void rapidjson::Writer::WriteDouble(double)'中:/usr/local/include/rapidjson/writer.h:173:53:错误:有'_snprintf' 没有依赖于模板参数的参数,因此'_snprintf' 的声明必须可用 [-fpermissive] /usr/local/include/rapidjson/writer.h:173:53:注意:(如果你使用“-fpermissive”,G++ 将接受您的代码,但不允许使用未声明的名称)

有问题的代码:(来自 rapidjson/writer.h)

writer.h 文件的顶部如下所示:

这让我想到了这个问题:cstdio stdio.h namespace

据我了解上述问题的答案,包含 cstdio 应在标准命名空间中声明 snprintf 符号。所以,我想包括 stdio.h 来获取在全局命名空间中定义的符号。无论我是否包含 cstdio、stdio.h 或两个文件(我不应该这样做),都会产生相同的编译错误

我的问题是两个部分:为什么 gcc 寻找 _snprintf 而不是 snprintf?还是我走错了路,这是否与 gcc 为模板参数绑定所做的两部分名称查找有关?(ala 10.8.2, http: //idlebox.net/2009/apidocs/gcc-4.4.1.zip/gcc-4.4.1/gcc_10.html#SEC315

0 投票
1 回答
5687 浏览

c++ - rapidjson - 更改对象 - 添加元素/项目

如何将成员添加到 rapidjson 对象然后打印它?

例如添加

对这个对象:

我试过了

我得到以下输出:

没有变化的意思。我究竟做错了什么?

0 投票
2 回答
4365 浏览

c++ - 使用 rapidjson 设置浮点精度

有没有办法控制使用 rapidjson 生成的 JSON 的输出精度?

例如:

这会产生类似的东西:

我发送了很多值,几个值只需要两位小数。

0 投票
2 回答
463 浏览

rapidjson - rapidjson .11 GetInt() 的困难,总是返回 0

这是json形式:

这是尝试解析和提取值的代码:
json 是包含上述内容的 std::string :

这是从 syslog 中提取的输出:

char json 值被正确提取,但 int 值始终为 0。我是第一次 rapidjson 用户,所以我确定我正在犯一个简单的错误,但我没有立即看到它。

谢谢大家,

顺便说一句,json 表单通过http://www.freeformatter.com/json-validator.html所以我认为它是正确的。无论如何,它是机器生成的。

0 投票
1 回答
6212 浏览

c++ - RapidJSON 循环遍历字符串数组?

我正在使用 RapidJSON 解析 JSON 数据,但我不知道如何遍历以下成员:

我在循环中尝试了以下 e_doc["members"][iString]["template"].GetString() 操作,将循环索引 (i) 转换为字符串,但它不将其识别为字符串。

它的工作原理是: