{ "code": 200, "data": [ { "id": "1661628249682804738", "status": -1 }, { "id": "1661289681529667586", "status": -1, } ] } qt json解析
时间: 2024-01-06 08:19:49 浏览: 79
这是一段 JSON 格式的数据,可以通过解析成为相应的数据结构来访问其中的数据。
在此数据中,包含一个名为 "code" 的键,值为 200;还包含一个名为 "data" 的键,值为一个数组,包含两个元素,每个元素都是一个包含 "id" 和 "status" 两个键值对的对象。
使用 Qt 的 QJsonDocument 类可以对此进行解析。以下是一段示例代码:
```c++
QByteArray json_data = /* JSON 数据 */;
QJsonDocument json_doc = QJsonDocument::fromJson(json_data);
if (json_doc.isObject()) {
QJsonObject json_obj = json_doc.object();
int code = json_obj.value("code").toInt();
if (json_obj.contains("data") && json_obj.value("data").isArray()) {
QJsonArray data_array = json_obj.value("data").toArray();
for (auto data_item : data_array) {
if (data_item.isObject()) {
QJsonObject data_obj = data_item.toObject();
QString id = data_obj.value("id").toString();
int status = data_obj.value("status").toInt();
// 使用解析后的数据进行操作
}
}
}
}
```
这段代码首先将 JSON 数据解析为 QJsonDocument 对象,然后分别获取其中的 "code" 和 "data" 字段。如果 "data" 是一个数组,就遍历其中的每个元素,获取其中的 "id" 和 "status" 字段。最后可以使用这些解析出的数据进行操作。
阅读全文