- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在使用 bsoncxx 将 bson 文档转换为 json 字符串时遇到困难。bsoncxx::to_json 函数返回一个“无效”/损坏的 std::string 对象。我无法读取其中的字符,当 std::string 被破坏时它会崩溃。
我已经重建了一切:mongoc、libbson、mongocxx 等...
这是一个示例代码:
bsoncxx::builder::basic::document doc{};
doc.append(bsoncxx::builder::basic::kvp("test", 1));
auto string = bsoncxx::to_json(doc);
我无法从字符串中提取数据,因为当我尝试使用 std::copy 复制内容时,std::end(string) 因“读取访问冲突”而崩溃...
我在程序的任何地方都使用 mongodb 并访问 bson 文档,一切正常。我试图在 mongodb 查询返回的现有 bson 文档上调用 bsoncxx::to_json 但它具有相同的行为...
我正在尝试使用 boost tcp 套接字将字节数组(加上一些信息,如如何解码字节数组)流式传输到 nodejs 程序,所以我想我可以简单地创建一个带有“二进制字段”的文档,转换它到 json 并通过 tcp 套接字流式传输...
任何人都知道我该怎么做,要么通过修复 bsoncxx::to_json,要么通过使用其他东西?
谢谢
编辑:
有关信息,我正在 Windows 10 x64 上使用 Visual Studio 2015 进行编译
最佳答案
我通过直接使用 libbson 而不是 bsoncxx 解决了这个问题...我查看了 bsoncxx::to_json 中的代码,并提取了它:
std::string ret;
bson_t bson;
auto view = document.view();
bson_init_static(&bson, view.data(), view.length());
size_t size;
auto result = bson_as_json(&bson, &size);
if (!result)
return "Error converting to json";
ret = std::string(result);
bson_free(result);
return std::move(ret);
似乎工作正常!
关于c++ - bsoncxx::to_json 返回损坏的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40309483/
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 8 年前。 Improve this qu
我目前正在尝试制作一个非常简单的应用程序,它会根据一天中的时间问候。我的代码是: open System let read() = Console.Read() let readLine() = Co
我已经运行Elasticsearch服务很长时间了,但是突然遇到了以下情况 由以下原因导致:org.elasticsearch.index.translog.TranslogCorruptedExce
我对执行以下操作的 php 重定向脚本有一个奇怪的问题: 在用户的浏览器中植入 Cookie,或者读取现有 Cookie(如果有)。 将用户重定向到另一个网址(重定向的网址是原始网址中的参数,例如 h
我正在使用 iText 7.0.0(Java 风格),似乎表格单元格 HorizontalAlignment 被忽略,因为 CENTER 和 RIGHT 都不起作用。你能重现这个吗? see th
简而言之: 我有一个可以从多个线程访问的计数器变量。尽管我已经实现了多线程读/写保护,但该变量似乎仍然以不一致的方式同时写入,导致计数器结果不正确。 深入杂草: 我使用的“for 循环”会在后台触发大
我有一个 REST 项目,在访问控制服务类中保存用户的ArrayList。一切都工作正常,直到 REST Web 服务突然抛出 java.util.NoSuchElementException。单步查
已关闭。此问题不符合Stack Overflow guidelines 。它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a software
当我刷新页面时,我无法显示 voteUp/Down,因为如果我执行 voteUp/Down(+1 或 -1) 并刷新页面,这会再次返回 voteUp/Down (0)。过去我使用 JSON,但社区推荐
我正在为离散时间 CPU 调度模拟器编写代码。它只是生成流程并相应地安排它们。我目前正在实现 FCFS 计划。我理解离散时间模拟器的本质,但我在用 C++ 实现时遇到了麻烦。 问题出现在handleN
尝试使用 yum 部署包时出现错误: 2016-07-07 14:14:31,296 - ERROR - error: rpmdb: BDB0113 Thread/process 6723/1
我有一个简单的同步队列 template class SynchronisedQueue { public: void Enqueue(const T& d
我正在使用 hadoop 0.20.append 和 hbase 0.90.0。我将少量数据上传到 Hbase,然后出于评估目的杀死了 HMaster 和 Namenode。在此之后,我向 Hbase
我使用 symfony 框架 1.4 创建了一个网站。我正在使用 sfguard 进行身份验证。 现在,这在 WAMP (windows) 上运行良好。我可以在不同的浏览器上登录多个帐户并使用该网站。
目前我已经实现了 HashMap private static Map cached = new HashMap(); 和 Item 是一个具有属性的对象 Date expireTime 和 byte
我试图将 2 个不同的 WPF 控件绑定(bind)到 ViewModel 中的同一属性,即 CheckBox.IsChecked 和 Expander.IsExpanded。我想要实现的行为是让 C
我希望这是一个简单的问题,但我没有找到答案。 我想让 build.gradle 文件通过替换某些变量来设置我的 Spring Boot 应用程序中的版本。这与广告一样有效: def tokens =
已关闭。此问题需要 debugging details 。目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and the
这个问题在这里已经有了答案: In a fragment shader, why can't I use a flat input integer to index a uniform array o
我已经下载了 OSM 世界地图。解析时出现异常: osm bound changeset (...) changeset Exception in thread "main" org.xml.sax.
我是一名优秀的程序员,十分优秀!