1 Star 0 Fork 0

朱满根/Eriex

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
settings.cpp 1.47 KB
一键复制 编辑 原始数据 按行查看 历史
Askaley 提交于 2024-11-01 17:01 . initial commmit.
#include "settings.h"
#include <QMutex>
#include <QMutexLocker>
#include <QDir>
#include <QFile>
#include <QDebug>
#include <QJsonDocument>
Settings *Settings::INSTANCE = nullptr;
Settings::Settings(QObject *parent)
: QObject{parent}
{
QString path = QDir::currentPath() + "/../conf/";
QFile pf(path + "preference.json");
if (!pf.open(QIODevice::ReadOnly)) {
qFatal() << "Can not open preference config file: " << pf.fileName();
} else {
QJsonParseError err;
QJsonDocument jd = QJsonDocument::fromJson(pf.readAll(), &err);
if (err.error != QJsonParseError::ParseError::NoError) {
qFatal() << "Json parse error: " << err.errorString() << "From file: " << pf.fileName();
} else m_pref = jd.object();
}
pf.close();
QFile sf(path + "system.json");
if (!sf.open(QIODevice::ReadOnly)) {
qFatal() << "Can not open system config file: " << sf.fileName();
} else {
QJsonParseError err;
QJsonDocument jd = QJsonDocument::fromJson(sf.readAll(), &err);
if (err.error != QJsonParseError::ParseError::NoError) {
qFatal() << "Json parse error: " << err.errorString() << "From file: " << sf.fileName();
} else m_system = jd.object();
}
sf.close();
}
Settings* Settings::Instance() {
static QMutex mutex;
if (!INSTANCE) {
QMutexLocker locker(&mutex);
if (!INSTANCE) {
INSTANCE = new Settings();
}
}
return INSTANCE;
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/zhumangen/eriex.git
git@gitee.com:zhumangen/eriex.git
zhumangen
eriex
Eriex
master

搜索帮助