Config.cpp 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. #include "Config.h"
  2. #include <QJsonDocument>
  3. #include <QJsonObject>
  4. #include <QJsonArray>
  5. #include <QFile>
  6. Config::Config(const QString &filename)
  7. {
  8. // QMap<QString, QString> configMap;
  9. //QString fullpath = QCoreApplication::applicationDirPath() + "/config.json";
  10. QFile file(filename);
  11. if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) {
  12. //LOGERROR("open {} error", filename.toStdString().c_str());
  13. return;
  14. }
  15. QByteArray array = file.readAll();
  16. file.close();
  17. QJsonParseError jsonParseError;
  18. QJsonDocument jsonDocument(QJsonDocument::fromJson(array, &jsonParseError));
  19. if(QJsonParseError::NoError != jsonParseError.error)
  20. {
  21. //LOGERROR("parse json file {} error", fullpath.toStdString().c_str());
  22. return;
  23. }
  24. if(!jsonDocument.isObject()){
  25. return;
  26. }
  27. QJsonObject obj = jsonDocument.object();
  28. QString appName = obj["AppName"].toString();
  29. QString appId = obj["AppId"].toString();
  30. QJsonObject redis = obj["redis"].toObject();
  31. redisCfg.host = redis["host"].toString();
  32. redisCfg.port = redis["port"].toInt();
  33. redisCfg.au = redis["au"].toString();
  34. }