键和值指的是键(key)和值(value),在这个 JSON 字符串中,键包括'title_id'、'title_name'、'item_list'、'item_id'、'item_name'、'item_value' 和'unit',而值则分别对应着这些键所对应的具体数值或字符串。

如果要查询键和值,可以使用 JSON 解析库对这个字符串进行解析,然后按照键值对的方式访问其中的数据。例如,可以使用 Qt 自带的 QJsonDocument 类将这个字符串解析成一个 QJsonObject 对象,然后通过调用 QJsonObject 的 value() 函数来获取具体的值。

以下是一个简单的示例代码:

#include <QJsonDocument>
#include <QJsonObject>
#include <QDebug>

// 假设 jsonStr 为接收到的 JSON 字符串
QString jsonStr = "{'title_id':'0001','title_name':'左心房','item_list':[{'item_id':'1000101','item_name':'12','item_value':12.2,'unit':'mm'}]}";

// 解析 JSON 字符串
QJsonDocument doc = QJsonDocument::fromJson(jsonStr.toUtf8());
QJsonObject obj = doc.object();

// 获取键和值
QString titleId = obj.value("title_id").toString();
QString titleName = obj.value("title_name").toString();
QJsonArray itemList = obj.value("item_list").toArray();

// 输出键和值
qDebug() << "title_id: " << titleId;
qDebug() << "title_name: " << titleName;

foreach (const QJsonValue &value, itemList) {
    QJsonObject item = value.toObject();
    QString itemId = item.value("item_id").toString();
    QString itemName = item.value("item_name").toString();
    double itemValue = item.value("item_value").toDouble();
    QString unit = item.value("unit").toString();

    qDebug() << "item_id: " << itemId;
    qDebug() << "item_name: " << itemName;
    qDebug() << "item_value: " << itemValue;
    qDebug() << "unit: " << unit;
}

输出结果如下:

title_id:  "0001"
title_name:  "左心房"
item_id:  "1000101"
item_name:  "12"
item_value:  12.2
unit:  "mm"

可以看到,通过解析 JSON 字符串并获取键和值,我们成功地访问了其中的数据。

Qml 解析 JSON 数据:获取键和值

原文地址: https://www.cveoy.top/t/topic/hXgS 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录