#ifndef EASYQJSON_H #define EASYQJSON_H #include #include #include #include #include namespace DJY{ class EasyQJson { public: //读取json文件并且返回Json对象 QJsonObject readJsonFileReturnObject(QString filepath) { QJsonObject rootObj = {}; QFile file(filepath); if(!file.open(QIODevice::ReadWrite))//打开文件 { return rootObj; } //throw std::logical_error(); QByteArray all = file.readAll(); file.close(); QJsonParseError json_error; QJsonDocument jsonDoc(QJsonDocument::fromJson(all,&json_error)); //读取json rootObj = jsonDoc.object(); return rootObj; } //读取QJsonObject返回QString QString readObjectReturnQString(QJsonObject object) { QString result = QString(QJsonDocument(object).toJson()); return result; } //提供JsonObject和键值,返回Json数组 QJsonArray readJsonObjectReturnArray(QJsonObject object, QString jsonkey) { QJsonValue value = object.value(jsonkey); QJsonArray array = value.toArray(); return array; } //判断Json数组有没有对应的键 bool JsonArrayContain(QJsonArray array, QString jsonObject, QString target) { //传入了array ,jsonobject为要找到的json对象键名,target为这个对象的值 for(int i = 0;i