QT中json数据比对
时间: 2023-08-08 21:08:53 浏览: 141
TCP收发json. 客户端和服务端
在 QT 中,可以使用 QJsonDocument 类来处理 JSON 数据。要比对两个 JSON 数据是否相同,可以将它们分别转换为 QJsonDocument 对象,并使用 equals() 函数进行比较。
下面是一个示例代码:
```cpp
#include <QJsonDocument>
#include <QDebug>
int main()
{
// 假设有两个 JSON 字符串
QString jsonStr1 = "{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}";
QString jsonStr2 = "{\"name\":\"John\",\"age\":30,\"city\":\"Los Angeles\"}";
// 将 JSON 字符串转换为 QJsonDocument 对象
QJsonDocument doc1 = QJsonDocument::fromJson(jsonStr1.toUtf8());
QJsonDocument doc2 = QJsonDocument::fromJson(jsonStr2.toUtf8());
// 比较两个 QJsonDocument 对象是否相同
if (doc1 == doc2) {
qDebug() << "JSON 数据相同";
} else {
qDebug() << "JSON 数据不相同";
}
return 0;
}
```
在上面的示例中,我们先将两个 JSON 字符串分别转换为 QJsonDocument 对象,然后使用 == 运算符比较它们是否相同。如果相同,则输出“JSON 数据相同”,否则输出“JSON 数据不相同”。
阅读全文