QSettings 类
用户通常希望应用程序记住其设置。在windows中,这些设置保存在注册表中,ios在属性文件列表中,而unix,在缺乏标准的情况下,其存储在ini文本中。QSettings有两种存储格式:QSettings::NativeFormat(在windows平台可读写注册表)、QSettings::IniFormat(读写ini文件)、QSettings::InvalidFormat
二、QSettings常用API:
- 创建QSettings对象
QSettings(const QString & organization, const QString & application = QString(), QObject * parent = 0)
- 写入数据
settings.setValue("editor/wrapMargin", 68);
- 读取数据
int margin = settings.value("editor/wrapMargin").toInt();
int margin = settings.value("editor/wrapMargin", 80).toInt();
- 其他
- 读写注册表
实例化对象时,设置存储格式为: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 <QApplication>
#include <QSettings>
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();
}

注: 其中注意读取Value时,如果存储值为16进制,不能使用int QVariant::toInt(bool * ok = 0) const,结果将返回0;
QSettings 类的更多相关文章
- Qt的QSettings类和.ini文件读写
Detailed Description QSettings类提供了持久的跨平台的应用程序设置.用户通常期望应用程序记住它的设置(窗口大小.位置等)所有会话.这些信息通常存储在Windows系统注册表 ...
- 【Qt】QSettings介绍【转】
简介 QSettings类提供了持久的跨平台应用程序设置. 用户通常期望应用程序记住它的设置(窗口大小.位置等)所有会话.这些信息通常存储在Windows系统注册表,OS X和iOS的属性列表文件中. ...
- QSettings介绍
简介 QSettings类提供了持久的跨平台应用程序设置. 用户通常期望应用程序记住它的设置(窗口大小.位置等)所有会话.这些信息通常存储在Windows系统注册表,OS X和iOS的属性列表文件中. ...
- 程序启动读取和关闭时保存应用程序设置(QSettings)
保存应用程序设置(QSettings)1. QSettings 类 QSettings 提供保存应用程序当前设置的接口,可以方便地保存程序的状态,例如窗口大小和位置,选项的选中状态等等.在 Windo ...
- Qt随笔 - QSettings
QSettings类提供了持久的跨平台应用程序设置. 嗯,一句话概括QSettings-- 创建 来看一下原型: QSettings::QSettings(const QString &org ...
- Qt读写三种文件,QSettings读ini配置文件,QJsonDocument读JSON文件,QDomDocument读xml文件
第一种INI配置文件 .ini 文件是Initialization File的缩写,即初始化文件. 除了windows现在很多其他操作系统下面的应用软件也有.ini文件,用来配置应用软件以实现不同用户 ...
- Java类的继承与多态特性-入门笔记
相信对于继承和多态的概念性我就不在怎么解释啦!不管你是.Net还是Java面向对象编程都是比不缺少一堂课~~Net如此Java亦也有同样的思想成分包含其中. 继承,多态,封装是Java面向对象的3大特 ...
- 【转载】PyQt QSetting保存设置
转载地址: http://blog.sina.com.cn/s/blog_4b5039210100h3zb.html 用户对应用程序经常有这样的要求:要求它能记住它的settings,比如窗口大小,位 ...
- QT读写ini配置文件
/********下面是写ini文件*************************/ //Qt中使用QSettings类读写ini文件 //QSettings构造函数的第一 ...
随机推荐
- linux 中数据库的常用操作
1-连接数据库: mysql -h localhost -u jiangbiao -p xxxxx@xxx:~$ mysql -h localhost -u jiangbiao -p Enter pa ...
- 2019.3.22 JMeter基础操作
1.添加线程组:testplan—添加—线程(用户)Threads(Users) 线程属性值:线程数(虚拟用户数).Rump-up(准备时长:设置所有线程全部启动时间).循环次数(每个线程重复发送请求 ...
- 移动端web开发常见问题
1.移动端如何定义字体font-family 三大手机系统的字体: ios 系统 默认中文字体是Heiti SC 默认英文字体是Helvetica 默认数字字体是HelveticaNeue 无微软雅黑 ...
- SQL2005EXPress自动备份
STEP1:在数据库服务器的master表中创建存储过程sp_BackupDatabase 代码如下 USE [master] GO /****** 对象: StoredProcedure [dbo] ...
- Jumpserver之设置开机自启动
vi /usr/lib/systemd/system/jms.service [Unit] Description=jms After=network.target mariadb.service r ...
- ASP.NET Core 集成测试中结合 WebApplicationFactory 使用 SQLite 内存数据库
SQLite 内存数据库(in-memory database)的连接字符串是 Data Source=:memory: ,它的特点是数据库连接一关闭,数据库就会被删除.而使用 services. ...
- JAVA基础积累
1.ajax同步和异步的区别: 同步是指一个线程要等待上一个线程执行完才能开始执行,同步可以看做是一个单线程操作,只要客户端请求了,在服务器没有反馈信息之前是一个线程阻塞状态.异步是一个线程在执行中, ...
- python升级pip和Django安装
1.centos7默认python版本为2.7.5,现升级到3.6.0 2.wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz ...
- Flutter学习(一)之MaterialApp和Scaffold组件使用详解
一,前言: MaterialApp和Scaffold是Flutter提供的两个Widget,其中: MaterialApp是一个方便的Widget,它封装了应用程序实现Material Design所 ...
- XSS 与 CSRF 跨站攻击
先做个名词解释: XSS:跨站脚本(Cross-site scripting) CSRF:跨站请求伪造(Cross-site request forgery) 看了估计也不清楚什么意思吧? 那么,详细 ...