BSON(Binary JSON)是一種二進制格式,用于表示JSON數據
在C++中,BSON可以使用第三方庫進行操作和存儲。其中,mongo-cxx-driver是MongoDB官方提供的C++驅動程序,它支持BSON數據的操作。你可以通過這個庫將JSON數據轉換為BSON格式,并在MongoDB數據庫中存儲和查詢。
下面是一個簡單的例子,展示了如何使用mongo-cxx-driver庫創建一個BSON對象并將其插入到MongoDB數據庫中:
#include<iostream>
#include <bsoncxx/json.hpp>
#include <mongocxx/client.hpp>
#include <mongocxx/instance.hpp>
#include <mongocxx/uri.hpp>
int main() {
mongocxx::instance instance{}; // 初始化MongoDB實例
mongocxx::uri uri("mongodb://localhost:27017"); // 連接字符串
mongocxx::client client(uri); // 創建客戶端
// 創建一個BSON對象
bsoncxx::document::value document = bsoncxx::from_json(R"({ "name": "John", "age": 30 })");
// 獲取數據庫和集合
auto database = client["my_database"];
auto collection = database["my_collection"];
// 插入BSON對象到集合中
collection.insert_one(document.view());
std::cout << "Document inserted successfully!"<< std::endl;
return 0;
}
在這個例子中,我們首先創建了一個BSON對象,然后將其插入到名為"my_database"的數據庫中的"my_collection"集合。注意,我們使用了bsoncxx::from_json()
函數將JSON字符串轉換為BSON對象。