qsettings删除注册表_QSettings使用方法
一 、QSettings介绍:
用户通常希望应用程序记住其设置。在windows中,这些设置保存在注册表中,ios在属性文件列表中,而unix,在缺乏标准的情况下,其存储在ini文本中。QSettings有两种存储格式:QSettings::NativeFormat(在windows平台可读写注册表)、QSettings::IniFormat(读写ini文件)、QSettings::InvalidFormat
QSettings使用户可以保存应用程序设置,并且支持用户自定义存储格式。QSetings API基于QVariant,因而你可以存储却大部分类型的数据。如果你需要一个非持久性的存储,推荐使用QMap.
二、QSettings常用API:创建QSettings对象QSettings(const QString & organization, const QString & application = QString(), QObject * parent = 0)
创建一个QSettings对象,必须传入应用程序名称,及公司名称。如果你的设置来自程序中不同的地方,你需要通过QCoreApplication::setOrganizationName() and QCoreApplication::setApplicationName()指定程序名称和公司名称,并且使用默认的构造函数QSettings settings。
QCoreApplication::setOrganizationName("MySoft");
QCoreApplication::setOrganizationDomain("mysoft.com");
QCoreApplication::setApplicationName("Star Runner");
...
QSettings settings;写入数据settings.setValue("editor/wrapMargin", 68);
每一条信息包含一个key和一个value,value类型为QVariant。读取数据int margin = settings.value("editor/wrapMargin").toInt();
如果key不存在,则返回 null QVariant(可以被转化为整数0)
读取数据的时候,可以传递第二个参数,给定新的value:int margin = settings.value("editor/wrapMargin", 80).toInt();其他
判断key是否存在: contains(const QString & key) const
移除某项:remove(const QString & key)
得到所有键:QStringList QSettings::allKeys()
三、使用示例读写注册表
实例化对象时,设置存储格式为:QSettings::NativeFormat,利用'/'来填写要读写的注册表:
QSetings settings(("HKEY_CURRENT_USER/", QSettings::NativeFormat);settings.setValue("regedit/test","green");//设置key-value键值对QString value = settings.value("regedit/test");//读取key对应的value读写ini文件#include #include int main(int argc, char *argv[]){ QApplication a(argc, argv); QSettings settings("E:/QTProject/BLOG/Settings_test/test.ini", QSettings::IniFormat); settings.setValue("Student/name", "ChengKeKe"); settings.setValue("Student/sex", "man"); settings.setValue("Student/age", 24); settings.setValue("Address", "Xi'an"); QString name = settings.value("Student/name").toString(); QString sex = settings.value("Student/sex").toString(); return a.exec();}
打开test.ini如图:
注: 其中注意读取Value时,如果存储值为16进制,不能使用int QVariant::toInt(bool * ok = 0) const,结果将返回0;
qsettings删除注册表_QSettings使用方法相关推荐
- qsettings删除注册表_QSettings读写ini文件和注册表
qt4.0一个非常有用的类QSettings QSettings是qt4.0提供的一个读取配置文件的类,在windows平台,它提供了ini文件读些,注册表读写的功能. 而且使用也非常简单.大家可以参 ...
- qsettings删除注册表_QSettings读写注册表
#include #include #include #include using namespace std; void writeSettings(){ //第一个是路径,第二个是文件名,在lin ...
- qsettings删除注册表_【Qt】QSettings读写注册表、配置文件【转】
简述 一般情况下,我们在开发软件过程中,都会缓存一些信息到本地,可以使用轻量级数据库sqlite,也可以操作注册表.读写配置文件. 关于QSettings的使用前面已经介绍过了,比较详细,见" ...
- qsettings删除注册表_Qt QSettings读取注册表和ini | 学步园
1.读取注册表,以读取已经安装的软件为例. 已经安装的软件信息的注册表位置: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ ...
- 以system用户登录win7修改删除注册表项的方法
有些注册表项只有system用户才具备有效权限修改和删除,管理员都无权.如何以system用户登录windows呢?按下面步骤即可. 1.以管理员用户运行 cmd . exe sc Create ...
- 批处理删除注册表分支方法
双击Reg文件可以导入注册表, 那么如何删除注册表的键值和分支呢? 可以用Dos命令 reg.exe 来删除.举例如下: 假如我要清除WinRAR的历史记录,可以新建个批处理文件, 然后在里面加入如下 ...
- Win64 驱动内核编程-32.枚举与删除注册表回调
枚举与删除注册表回调 注册表回调是一个监控注册表读写的回调,它的效果非常明显,一个回调能实现在SSDT 上 HOOK 十几个 API 的效果.部分游戏保护还会在注册表回调上做功夫,监控 service ...
- mysql重装要删注册表_Mysql重装问题—删除注册表
最近不小心突然卸载了mysql,结果重装mysql老是安装不成功,不是第四步出问题,就是第三步出问题无响应,卸了再重新安装,还是不行.究其原因就是系统里的注册表没有删除干净. 解决步骤: 1.在&qu ...
- 如何通过使用注册项 (.reg) 文件添加、修改或删除注册表子项和值
警告:注册表编辑器使用不当可导致严重问题,可能需要重新安装操作系统.Microsoft 不能保证您可以解决因注册表编辑器使用不当而导致的问题.使用注册表编辑器需要您自担风险. 本文分步介绍了如何使用注 ...
最新文章
- IEEE技术领域大奖公布:ML先驱上榜,大陆唯一获奖学者来自清华
- IE, FireFox, Opera 浏览器支持CSS实现Alpha半透明的方法
- Asp.net之MsChart控件动态绑定温度曲线图
- 代码逻辑分析_双11模块79.34%的前端代码是怎样智能生成的?
- Python第三方库使用 —— PIL
- J2EE6 servlet session超时机制
- 数据结构——约瑟夫环(循环链表C语言版)
- 八爪鱼爬取网页数据案例+图解
- cousera课程 Introduction to Programming with MATLAB 范德堡大学 作业1
- 感动!有人将吴恩达的视频课程做成了文字版
- HTML5笔记(一)
- 传奇单机架设教程及游戏GM设置方法
- python 的math函数库
- vim如何与外界复制粘贴
- 2017第三届美亚杯全国电子数据取证大赛团队赛wp
- Adreno Profiler 提取手机游戏资源
- 怎么重置windows7系统网络设置使用cmd命令行实现
- 开源轻量级显示框架LVGL简介
- 内存泄漏检测C版小工具
- ISCE文件格式及其含义