我在使用bsoncxx将bson文档转换为json字符串时遇到困难。 的bsoncxx :: to_json函数返回一个“无效” /损坏的std :: string对象.. 我在那里不能读取的字符,它崩溃时的std :: string被破坏..bsoncxx :: to_json返回损坏的字符串
我“已经重建的一切:mongoc,libbson,mongocxx等..
下面是一个示例代码:
bsoncxx::builder::basic::document doc{};
doc.append(bsoncxx::builder::basic::kvp("test", 1));
auto string = bsoncxx::to_json(doc);
我不能提取字符串中的数据,因为的std ::结束(串)当我尝试使用std :: copy复制内容时发生崩溃,导致“读取访问冲突”...
我在程序中无处不在使用mongodb并访问bson文档,一切正常。我试图在由mongodb查询返回的已存在的bson文档上调用bsoncxx :: to_json,但它具有相同的行为...
我试图流式传输一个字节数组(另外,一些信息,如如何解码字节数组)使用boost tcp套接字到nodejs程序,所以我想我可以简单地创建一个带有“二进制字段”的文档,将其转换为json并通过tcp套接字将其流式传输...
任何人都知道我可以做到这一点,无论是通过修复bsoncxx :: to_json,或通过使用别的东西?
感谢
编辑:
有关信息,我与Visual Studio 2015年的Windows编译10 64
嗨,你能否提供[SSCCE](http://sscce.org)?我想在Windows和Linux上尝试一下,看看我是否可以复制它。 – xdg
嗨,对不起,延迟。你需要一个压缩与.dll和everthing或只有主要的cpp文件?因为我在问题(+包含)中只做了一个3行项目,它具有相同的行为 – pascx64
https://1drv.ms/f/s!AueTJubu1l2CgzPHRovvdil6yOau 这里是除了boost之外的所有内容的链接。我正在使用boost 1.61 – pascx64