如何使用QT创建JSON数组 [英] How do I create JSON array using QT

查看:1681
本文介绍了如何使用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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆