C++におけるJSONオブジェクトの作成方法は何ですか?

C++でJSONオブジェクトを作成および操作するために、サードパーティのライブラリを使用することができます。以下はRapidJSONライブラリを使用してJSONオブジェクトを作成する例です。

#include <iostream>
#include "rapidjson/document.h"
#include "rapidjson/writer.h"
#include "rapidjson/stringbuffer.h"

using namespace rapidjson;

int main() {
    // 创建一个空的 JSON 对象
    Document document;
    document.SetObject();

    // 向 JSON 对象中添加键值对
    Value name;
    name.SetString("John", document.GetAllocator());
    document.AddMember("name", name, document.GetAllocator());

    Value age;
    age.SetInt(30);
    document.AddMember("age", age, document.GetAllocator());

    // 将 JSON 对象转换为字符串
    StringBuffer buffer;
    Writer<StringBuffer> writer(buffer);
    document.Accept(writer);

    // 输出 JSON 字符串
    std::cout << buffer.GetString() << std::endl;

    return 0;
}

上記のコードは、RapidJSONライブラリを使用しています。最初に、空のJSONオブジェクトdocumentを作成し、次に、SetObject()メソッドを使用してそれを空のJSONオブジェクトとして設定します。

その後、私たちは2つのキーと値のペアを作成しました。1つは名前で文字列「John」で、もう1つは年齢で整数30です。AddMember()メソッドを使用して、キーと値のペアをJSONオブジェクトに追加しました。

最後に、JSONオブジェクトを文字列に変換します。変換後の文字列を保存するためにStringBufferを使用し、JSONオブジェクトを文字列に変換するためにWriterを使います。最後に、GetString()メソッドを使用して文字列を取得し、std :: coutを使用して出力します。

結果は次の通りです:

{"name":"John","age":30}

RapidJSONはJSONの解析と生成を効率的に行うためのライブラリであり、これを使用することで簡単にJSONオブジェクトを作成し操作することができます。もちろん、他にもnlohmann/jsonやjsoncppなどの選択肢もあります。

bannerAds