Qt封装json格式数据
时间: 2023-07-03 11:29:54 浏览: 78
你可以使用 Qt 提供的 QJsonDocument 和 QJsonObject 类来封装和解析 JSON 格式的数据。
下面是一个简单的示例代码,演示了如何创建一个包含键值对的 JSON 对象,并将其转换为字符串:
```cpp
QJsonObject jsonObj;
jsonObj["name"] = "Alice";
jsonObj["age"] = 25;
QJsonDocument jsonDoc(jsonObj);
QString jsonString = QString::fromUtf8(jsonDoc.toJson());
```
这将创建一个名为 `jsonObj` 的 JSON 对象,包含两个键值对:`name` 和 `age`。然后将其转换为 JSON 格式的字符串,并存储在 `jsonString` 中。
如果你需要解析 JSON 字符串,可以使用下面的代码:
```cpp
QString jsonString = "{\"name\":\"Alice\",\"age\":25}";
QJsonDocument jsonDoc = QJsonDocument::fromJson(jsonString.toUtf8());
QJsonObject jsonObj = jsonDoc.object();
QString name = jsonObj["name"].toString();
int age = jsonObj["age"].toInt();
```
这将创建一个包含 JSON 格式数据的字符串,并将其转换为 `QJsonDocument` 对象。然后,使用 `QJsonObject` 类从 `QJsonDocument` 对象中提取数据。在这个示例中,我们提取了 `name` 和 `age` 的值,并将它们存储在 `name` 和 `age` 变量中。
阅读全文