gpt4 book ai didi

json - std::string 到 rapidJson 对象的转换

转载 作者:行者123 更新时间:2023-12-05 03:05:31 25 4
gpt4 key购买 nike

我试图将一个 std::string 转换为以下格式的 rapidJson 对象

  { 
"data":{

"value": "AB1234"
}
}

我试过了

rapidjson::Document aJsonDocument;
aJsonDocument.SetObject();
rapidjson::Document::AllocatorType &aAllocator = aJsonDocument.GetAllocator();

rapidjson::Value aPsmJson(rapidjson::kStringType);
std::string aStr = "ABCDEF";
aPsmJson.SetString(aStr.c_str(), aAllocator);
aJsonDocument.AddMember("value", aPsmJson, aAllocator);

//jsonToString is a function to convert json document to string
std::string aInputJsonString = jsonToString(aJsonDocument);
std::cout << "Output: " << aInputJsonString ;

这是给出输出{“值”:“ABCDEF”}

最佳答案

您忘记为 "data" 创建一个 Value:

string s = "ABCDEF";
Document d(kObjectType);
Value data(kObjectType);
Value value;
value.SetString(s.c_str(), d.GetAllocator());
data.AddMember("value", value, d.GetAllocator());
d.AddMember("data", data, d.GetAllocator());

std::cout << jsonToString(d);

输出:

{
"data": {
"value": "ABCDEF"
}
}

关于json - std::string 到 rapidJson 对象的转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50811005/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com