如何使用 MongoDB C++ 驱动程序将字符串转换为 BSON?

Posted

技术标签:

【中文标题】如何使用 MongoDB C++ 驱动程序将字符串转换为 BSON?【英文标题】:How to convert string to BSON using MongoDB C++ driver? 【发布时间】:2012-02-05 20:10:15 【问题描述】:

类似于toString 有没有一种方法可以将字符串转换为 BSON 对象?我需要使用 C++ 驱动程序删除文档,删除函数希望查询具有 BSON 对象。

【问题讨论】:

【参考方案1】:

使用此处的 fromjson 方法:

http://api.mongodb.org/cplusplus/1.5.4/namespacemongo.html#a4f542be0d0f9bad2d8cb32c3436026c2

BSONObj mongo::fromjson (   const string &  str  )  
Create a BSONObj from a JSON <http://www.json.org> string.

除了此处描述的 JSON 扩展扩展 http://mongodb.onconfluence.com/display/DOCS/Mongo+Extended+JSON,这个函数接受 某些不带引号的字段名称,并允许在以下情况下选择使用单引号 指定字段名称和字符串值而不是双引号。 JSON Unicode 转义 序列(形式)被转换为 utf8。

例外情况: 如果解析失败,则会出现 MsgAssertionException。此断言包含的消息包括 解析失败的粗略指示。

【讨论】:

以上是关于如何使用 MongoDB C++ 驱动程序将字符串转换为 BSON?的主要内容,如果未能解决你的问题,请参考以下文章

如何在启动 C++ 应用程序时检查 mongodb 是不是正在运行

用mongodb构建一个c++项目

C++下如何将json数据存入mysql数据库

如何在nodejs mongodb本机驱动程序中将字符串转换为ObjectId?

将字符串转换为 MongoDB BsonDocument

使用新的 MongoDB C++ 驱动程序创建索引