#include "mainwindow.h"#include <QApplication>//#include <QByteArray>//add
#include <QDebug>#include <QJsonObject>#include <QJsonDocument>int main(int argc, char *argv[]){QApplication a(argc, argv);// MainWindow w;// w.show();/*生成Json*/QJsonObject json;json.insert("name", QString("Qt"));/*1. key(QString) 2.value(QJsonValue)*/json.insert("version", 6);json.insert("windows", true);QJsonDocument document;document.setObject(json);
QByteArray byte_array = document.toJson(QJsonDocument::Compact);QString json_str(byte_array);qDebug()<<"生成Json:"<<json_str;/*解析Json*/QJsonParseError json_error;QJsonDocument parse_doucment = QJsonDocument::fromJson(byte_array, &json_error);if(json_error.error == QJsonParseError::NoError){
if(parse_doucment.isObject()) //判断是否是对象{
QJsonObject obj = parse_doucment.object();if(obj.contains("name")){
QJsonValue name_value = obj.take("name");if(name_value.isString()){
QString name = name_value.toString();qDebug()<<"name "<<name;}
}
if(obj.contains("version")){
QJsonValue version_value = obj.take("version");if(version_value.isDouble()){
int version = version_value.toVariant().toInt();qDebug()<<"version "<<version;}
}
if(obj.contains("windows")){
QJsonValue version_value = obj.take("windows");if(version_value.isBool()){
bool flag = version_value.toBool();qDebug()<<"windows "<<flag;}
}
}
}
return a.exec();}
QJson的简单使用
最新推荐文章于 2024-03-05 17:35:34 发布