从字符串创建 bsoncxx::builder::basic::document?
Create bsoncxx::builder::basic::document from a string?
有没有办法从 std::string 创建 bsoncxx::builder::basic::document?
我知道如何使用 make_document、kvp、make_array 等 mongocxx 函数以及流函数构建文档。
但我想知道的是,我们是否可以创建文档的 std::string 表示并将其变成 bsoncxx::builder::basic::document?
假设这个std::string
包含JSON,那么是的。您可以调用 bsoncxx::from_json
.
如果 std::string
缓冲区以某种方式包含 BSON 数据而不是 JSON,您可以将字符串中的数据复制到新缓冲区并使用前两个缓冲区之一 bsoncxx::document::value::value
构造函数,它拥有缓冲区的所有权。
您还可以通过将字符串的基础 .data()
和 .length()
传递给两个参数 bsoncxx::view::view
构造函数,然后将该视图传递给适当的 bsoncxx::value
构造函数,它将复制视图中的数据。
有没有办法从 std::string 创建 bsoncxx::builder::basic::document?
我知道如何使用 make_document、kvp、make_array 等 mongocxx 函数以及流函数构建文档。
但我想知道的是,我们是否可以创建文档的 std::string 表示并将其变成 bsoncxx::builder::basic::document?
假设这个std::string
包含JSON,那么是的。您可以调用 bsoncxx::from_json
.
如果 std::string
缓冲区以某种方式包含 BSON 数据而不是 JSON,您可以将字符串中的数据复制到新缓冲区并使用前两个缓冲区之一 bsoncxx::document::value::value
构造函数,它拥有缓冲区的所有权。
您还可以通过将字符串的基础 .data()
和 .length()
传递给两个参数 bsoncxx::view::view
构造函数,然后将该视图传递给适当的 bsoncxx::value
构造函数,它将复制视图中的数据。