溫馨提示×

c++ bson文檔如何創(chuàng)建

c++
小樊
83
2024-09-15 15:33:15
欄目: 編程語言

在C++中,要創(chuàng)建一個BSON文檔,你需要使用一個BSON庫,例如mongo-cxx-driver

首先,確保你已經(jīng)安裝了mongo-cxx-driver。你可以按照官方文檔中的說明進行安裝:mongo-cxx-driver installation

以下是一個簡單的示例,展示了如何使用mongo-cxx-driver創(chuàng)建一個BSON文檔:

#include<iostream>
#include <bsoncxx/json.hpp>
#include <bsoncxx/builder/stream/document.hpp>
#include <bsoncxx/exception/exception.hpp>

using bsoncxx::builder::stream::document;
using bsoncxx::builder::stream::finalize;

int main() {
    try {
        // 創(chuàng)建一個BSON文檔
        auto doc = document{} << "name" << "John Doe"
                              << "age" << 30
                              << "city" << "New York"
                             << finalize;

        // 將BSON文檔轉(zhuǎn)換為JSON字符串
        std::string json_str = bsoncxx::to_json(doc.view());

        // 輸出JSON字符串
        std::cout << "BSON document as JSON: "<< json_str<< std::endl;
    } catch (const std::exception& e) {
        std::cerr << "Error: " << e.what()<< std::endl;
        return 1;
    }

    return 0;
}

這個示例中,我們使用了bsoncxx::builder::stream::document來創(chuàng)建一個BSON文檔。我們向文檔中添加了三個字段:nameagecity。然后,我們使用bsoncxx::to_json()函數(shù)將BSON文檔轉(zhuǎn)換為JSON字符串,并將其輸出到控制臺。

注意:在編譯此代碼時,確保鏈接mongo-cxx-driver庫。例如,使用g++編譯器時,你可以使用以下命令:

g++ your_file.cpp -o your_output_file $(pkg-config --cflags --libs libmongocxx)

0