如何在QJsonObject中为一个键添加多个值

3
我想要按照以下格式生成一个QJsonString:
{"id": 1, "params":[1,2,3]}

但我不知道如何将[1,2,3]这几个值添加到"params"键上。
以下是我的代码:
 QJsonObject *jsonObj = new QJsonObject();
 jsonObj->insert("id",1);
 jsonObj->insert("params",[1,2,3]);
 QJsonDocument *jsonDoc = new QJsonDocument(*jsonObj);
 QString jsonString = jsonDoc->toJson(QJsonDocument::Indented);

有人能帮我吗。谢谢!

(这句话已经是中文了,无需翻译)
1个回答

3
如果您的编译器支持C++11,您只需将[1, 2, 3]替换为{ 1, 2, 3 }:
jsonObj->insert("params", { 1, 2, 3 });

如果不行,还有另外一种简洁的方式:
jsonObj->insert("params", QJsonArray() << 1 << 2 << 3);

顺便提一下:我希望你正确地删除new出来的jsonObjjsonDoc


谢谢!那帮了很多 @tonytony - newww0
{"id": 1, "params":{ "parameter1" : 1, "parameter2": 2, "parameter3" :3}} 你知道如何生成这个JsonObject吗?谢谢 @tonytony - newww0
@newww0 创建一个 QJsonObject,其中包含 "parameter1"、"parameter2" 和 "parameter3" 字段,就像你创建顶层对象一样,然后使用 insert 方法或 operator[] 将其添加到顶层对象中。 - tonytony

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接