Qt中使用QSettings类读取ini后缀的配置文件非常简单,使用该类也可以很简单的操作Windows注册表。 使用QSettings类读写ini配置文件的示例代码 相关代码如下: // test.cpp #include <QCoreApplication> #include <QSettings> #include fileName; fileName = QCoreApplication::applicationDirPath(); fileName += "/config/net.ini"; QSettings settings(fileName, QSettings::IniFormat); // 设置服务器的ip和端口信息 settings.beginGroup("server");
Qt中使用QSettings类读取ini后缀的配置文件非常简单,使用该类也可以很简单的操作Windows注册表。 使用QSettings类读写ini配置文件的示例代码 相关代码如下: // test.cpp #include <QCoreApplication> #include <QSettings> #include fileName; fileName = QCoreApplication::applicationDirPath(); fileName += "/config/net.ini"; QSettings settings(fileName, QSettings::IniFormat); // 设置服务器的ip和端口信息 settings.beginGroup("server"); 读写注冊表、配置文件 2、QSettings官方文档
Qt中使用QSettings类读取ini后缀的配置文件非常简单,使用该类也可以很简单的操作Windows注册表。 使用QSettings类读写ini配置文件的示例代码 相关代码如下: // test.cpp #include <QCoreApplication> #include <QSettings> #include fileName; fileName = QCoreApplication::applicationDirPath(); fileName += "/config/net.ini"; QSettings settings(fileName, QSettings::IniFormat); // 设置服务器的ip和端口信息 settings.beginGroup("server"); 读写注冊表、配置文件 2、QSettings官方文档
Quick 给我们提供了非常方便的配置文件管理功能,它不仅仅可以在 C++ 中访问,也可以在 QML 中直接访问,最近在看 Qt Examples 目录下的 gallery 项目示例时,虽然知道用的是 QSettings 保存的持久化数据,但是不知道配置保存在哪里了,遂到 Qt 官网查询了一下,有英文阅读能力的可直接参考官网:https://doc.qt.io/qt-5/qsettings.html,以下为照搬翻译: QSettings 配置保存的位置取决于你应用是系统级别还是用户级别的,这个概念如果不了解可以忽略,只关注下面路径就可以了。
概述 有时候,我们需要根据本地的配置文件,去配置我们的程序,在其他语言中,可能需要自己去写读写文件的逻辑,而在QT中,就直接提供了QSettings类,简化了我们的操作! , const QVariant &value) 第一个参数是键 第二个参数是默认值,也就是说如果没有读到值,就返回该默认值,如填-1 ,就返回-1 以下代码可创建出如上述图片所写配置文件: QSettings *settings = new QSettings("/home/cai/qt_pro/Qsettings/QsettingsTest/setting.ini",QSettings::IniFormat 配置文件不存在就创建 QSettings *settings = new QSettings("/home/cai/qt_pro/Qsettings/QsettingsTest/setting.ini ",QSettings::IniFormat); 3.
在 Qt 中,QSettings 类被广泛用于读取、修改和存储 .ini 文件。 读取 .ini 文件 要读取 .ini 文件,您可以使用 QSettings 类,并指定文件路径和格式。 以下是一个读取操作的示例: QSettings settings("config.ini", QSettings::IniFormat); QString value = settings.value( 修改 .ini 文件 修改 .ini 文件同样使用 QSettings 类,您可以使用 setValue 方法来设置新的值: QSettings settings("config.ini", QSettings 存储 .ini 文件 QSettings 类在修改设置时会自动存储更改。
二、QT中提供读写.INI文件的基本使用方法 1、包含头文件 1#include <QSettings> 2、如何写INI文件 (1)定义一个QSettings指针对象,例如: 1QSettings * Config_ini_Write ; (2)实例化对象,例如: 1Config_ini_Write = new QSettings("INI",QSettings::IniFormat); (3)写INI 指针对象,例如: 1QSettings *Config_ini_Read; (2)实例化对象,例如: 1Config_ini_Read= new QSettings("INI",QSettings::IniFormat *Config_ini_Read = NULL; 27 Config_ini_Read = new QSettings(CONFIG_INI_NAME , QSettings::IniFormat *Config_ini_Write = NULL; 40 Config_ini_Write = new QSettings(CONFIG_INI_NAME, QSettings::IniFormat
为此, 通过 QSettings 类保存和读取上次使用的路径。 读取 ini 文件中的配置信息,文件不存在时会自动创建 QSettings* pIniSet = new QSettings(config_path, QSettings::IniFormat 对象,自动管理内存 std::unique_ptr<QSettings> pIniSet(new QSettings(config_path, QSettings::IniFormat)); 读取 ini 文件中的配置信息 QSettings* pIniSet = new QSettings(config_path, QSettings::IniFormat); // 从配置文件中读取上次使用的路径 路径记忆功能 在 open2() 版本中,程序通过 QSettings 实现了路径记忆功能。
代码示例 // startupitems.h #ifndef STARTUPITEMS_H #define STARTUPITEMS_H #include <QObject> #include <QSettings registry("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run", QSettings::NativeFormat // 添加启动项 void addStartupItem(const QString& itemName, const QString& itemPath) { QSettings registry("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run", QSettings::NativeFormat registry("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run", QSettings::NativeFormat
用户对应用程序经常有这样的要求:要求它能记住它的settings,比如窗口大小,位置,一些别的设置,还有一个经常用的,就是recent files,等等这些都可以通过Qsettings来实现。 而 Qsettings就是提供了一种方便的方法来存储和恢复应用程序的settings。 QSetting 来自PyQt5.QtCore模块,使用之前需导入该模块。 当我们创建一个 Qsettings的对象时,我们需要传递给它两个参数,第一个是你公司或者组织的名称,第二个事你的应用程序的名称。 比如: Qsettings(“MS”,”MyApp”) 假如我们在应用程序中多次要用到Qsettings,为了简单起见,我们可以在主程序中先如下声明: app.setOrganizationName 类型的变量,便不需要书写两个参数了,直接用下面的语句就可以了: settings = Qsettings() 保存设置用 settings.setValue(设置名 ,变量)即可。
注册表信息.png 2、Qt读取注册表信息并判断是否是兼容模式启动 使用QSettings来读取注册表中的内容,然后判断注册表中的key有没有包含测试程序的,如果有那么测试程序就是以兼容模式启动的。 代码如下: bool checkCompatibleRun() { QSettings settings("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows NT\\CurrentVersion\\AppCompatFlags\\Layers", QSettings::NativeFormat); QStringList groupsList qDebug() << "error"; } return a.exec(); } 结尾: 使用到的头文件: #include <QSysInfo> #include <QSettings
先导 本文用于在qt中使用配置文件进行一些配置的保存 方法 关键点就是使用qt的一个类QSettings,该类提供一系列接口用于配置文件的操作如读取和写入,支持的配置文件格式有ini、conf 实现 定义 QSettings setting = new QSettings(file_path, QSettings::IniFormat); 读取 QVaraint value = setting
使用QSettings类保存。 m_loadFile = ui->LineEdit_list->text(); SaveSettings(); } void Dialog::SaveSettings() { QSettings setting(m_iniFile,QSettings::IniFormat); setting.setValue("path/path",m_loadFile); } 3.2 抽奖功能实现 setting(m_iniFile,QSettings::IniFormat); m_loadFile = setting.value("path/path").toString(); } 四、总结 总结下来,本程序用到的点有: 定时器 事件系统 随机数 QSettings类使用 文件操作 其中最重要的是定时器及随机数的使用。
使用配置文件 #include <QSettings> #include <QCoreApplication> int main(int argc, char *argv[]) { QCoreApplication app(argc, argv); // 读取配置文件 QSettings settings("config.ini", QSettings::IniFormat);
/Setting.ini",QSettings::IniFormat); int index = setting.value("PlaybackModel",1).toInt(); loopActions = m_playModeKey[i]) { m_model->setPlaybackMode(m_playModeValue[i]); QSettings /Setting.ini",QSettings::IniFormat); setting.setValue("PlaybackModel",i); break ; } } } 窗口初始化的时候加载Setting.ini文件 QSettings setting(". /Setting.ini",QSettings::IniFormat); setting.setValue("PlaybackModel",i); break
先来更正上一篇中的笔误,设置类类名应为QSettings,多一个“s”。 from PyQt5.QtCore import QSettings 为了解决图标文件(以及帮助文件和其它一些较小的文件)与应用程序目录不匹配 或者 易丢失 的问题,在PyQt中,可以将多个图标文件打包成资源文件
const QString &layout) { QString file = QString("%1/%2.ini").arg(App::LayoutPath).arg(layout); QSettings set(file, QSettings::IniFormat); set.beginGroup("MainWindow"); restoreState(set.value("State return; } QString file = QString("%1/%2.ini").arg(App::LayoutPath).arg(layout); QSettings set(file, QSettings::IniFormat); set.beginGroup("MainWindow"); set.setValue("State", saveState
保存的时候同样也要扫描插件看扩展的格式writer 保存完的话就要把文档对应的QUndoStack标记空了, 这样就不会出现没有修改重复保存的情况 最后就把文件加入"recent file" 最近打开文件记录 这个打开记录是保存在QSettings 里的, 在编辑器下次启动时也会还原打开的文件 QSettings是个之前没用过的东西, 可以保存各种选项, 而且还不用操作保存/读取, 挺实用的 总结 这么看下来多文档模型还是挺清晰的, 最重要的是管理好状态切换
然后直接将该布局另存为一个布局配置文件使用,可以省略重新新建布局重新来一次大的调整的工作,此功能主要是用到了配置文件的保存,另存为一个不同名字的配置文件即可,属于非常简单的功能,在代码上来讲,其实Qt的配置文件类QSettings return; } QString file = QString("%1/%2.ini").arg(App::LayoutPath).arg(layout); QSettings set(file, QSettings::IniFormat); set.beginGroup("MainWindow"); set.setValue("State", saveState
const QString &layout) { QString file = QString("%1/%2.ini").arg(layoutPath).arg(layout); QSettings set(file, QSettings::IniFormat); set.beginGroup("MainWindow"); restoreState(set.value("State return; } QString file = QString("%1/%2.ini").arg(layoutPath).arg(layout); QSettings set(file, QSettings::IniFormat); set.beginGroup("MainWindow"); set.setValue("State", saveState