当前位置: 首页> 娱乐> 影视 > Qt QJson组装数据Sig传递

Qt QJson组装数据Sig传递

时间:2025/7/16 1:36:15来源:https://blog.csdn.net/u013351233/article/details/140501930 浏览次数:0次

有时候界面输入的值,不想创建结构体,那么直接用QString类型传输,更便捷方便,速度更快

QJson是你选择的一种方式

组合:

#include <QCoreApplication>
#include <QJsonDocument>
#include <QJsonObject>
#include <QJsonArray>
#include <QDebug>int main(int argc, char *argv[])
{QCoreApplication a(argc, argv);// 创建JSON对象QJsonObject jsonObject;jsonObject["name"] = "John Doe";jsonObject["age"] = 30;// 创建JSON数组QJsonArray jsonArray;jsonArray.append("apple");jsonArray.append("banana");jsonArray.append("cherry");// 将数组添加到对象中jsonObject["fruits"] = jsonArray;// 创建JSON文档QJsonDocument jsonDoc(jsonObject);// 将JSON文档转换为字符串QString jsonString = jsonDoc.toJson(QJsonDocument::Indented);qDebug() << "JSON Data:" << jsonString;return a.exec();
}

解析:

#include <QCoreApplication>
#include <QJsonDocument>
#include <QJsonObject>
#include <QJsonArray>
#include <QDebug>int main(int argc, char *argv[])
{QCoreApplication a(argc, argv);// JSON字符串QString jsonString = R"({"name": "John Doe","age": 30,"fruits": ["apple", "banana", "cherry"]})";// 将JSON字符串解析为JSON文档QJsonDocument jsonDoc = QJsonDocument::fromJson(jsonString.toUtf8());// 检查解析是否成功if (jsonDoc.isNull() || !jsonDoc.isObject()) {qWarning() << "Failed to parse JSON";return -1;}// 获取JSON对象QJsonObject jsonObject = jsonDoc.object();// 访问数据QString name = jsonObject["name"].toString();int age = jsonObject["age"].toInt();QJsonArray fruitsArray = jsonObject["fruits"].toArray();qDebug() << "Name:" << name;qDebug() << "Age:" << age;qDebug() << "Fruits:";for (const QJsonValue &value : fruitsArray) {qDebug() << " -" << value.toString();}return a.exec();
}

AI生成,提供思路

关键字:Qt QJson组装数据Sig传递

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: