如何使用QT创建JSON数组 [英] How do I create JSON array using QT
本文介绍了如何使用QT创建JSON数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想将数据存储在JSON文件中,例如:
I want store my datas in JSON file like:
{
"plottingData": [
{
"min": 17,
"max": 35,
"mean": 20
},
{
"min": 7,
"max": 35,
"mean": 17
},
{
"min": 8,
"max": 50,
"mean": 29
}
]
}
如何创建此结构? 我曾经使用过QJsonObject,但无法像这样添加QJsonArray.
How can I create this struct? I used to QJsonObject but I couldn't add QJsonArray like this.
推荐答案
来自Qt文档:
QJsonArray plot_array;
// use initializer list to construct QJsonObject
auto data1 = QJsonObject(
{
qMakePair(QString("min"), QJsonValue(17)),
qMakePair(QString("max"), QJsonValue(35)),
qMakePair(QString("mean"), QJsonValue(20))
});
plot_array.push_back(QJsonValue(data1));
// Or use insert method to create your QJsonObject
QString min_str("min");
QString max_str("max");
QString mean_str("mean");
for(auto item : your_collection)
{
QJsonObject item_data;
item_data.insert(min_str, QJsonValue(item.min));
item_data.insert(max_str, QJsonValue(item.max));
item_data.insert(mean_str, QJsonValue(item.mean));
plot_array.push_back(QJsonValue(item_data));
}
QJsonObject final_object;
final_object.insert(QString("plottingData"), QJsonValue(plot_array));
这篇关于如何使用QT创建JSON数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文