QT之QSettings 学习
1、读写配置文件。
代码如下:
//创建配置文件
QSettings iniFile(QCoreApplication::applicationDirPath()+"/test.ini", QSettings::IniFormat); //参数1,代表新建ini文件的位置的绝对路径; 参数2,将设置存储在ini文件中
//写入数据
iniFile.setValue("/setting/value1", );
iniFile.setValue("/setting/value2", );
setting.beginGroup("/setting"); //切换到setting组之下
iniFile.setValue("value3", );
setting.endGroup(); //关闭切换分组
//读取数据
QStringList all = setting.childGroups(); //从配置文件中读取所有的分组setting.beginGroup("/setting");
QString value1=setting.value("/setting/value1").toString();
setting.beginGroup("/setting");
QString value2=setting.value("value2").toString();
setting.endGroup();
test.ini中的数据格式如下:
[setting] value1=1 value2=2 value3=3
注意:因为QVariant是不会提供所有数据类型的转化的,比如有toInt(),toPoint(),toSize(),但却没有对Qcolor,Qimage和Qpixmap等数据类型的转化,此时可以用QVariant.value(); QSettings是可重入的,意味着可以同时在不同的线程中使用不同的QSettings对象
若key所对应的value是int型的,也可以toInt(),若没有要找的key,如果用返回0。
pos= setting.value("pos", QVariant(QPoint(200, 200))).toPoint();
size= setting.value("size", QVariant(QSize(400, 400))).toSize();
- contains() 判断一个指定的键是否存在
- remove() 删除相关的键
- allKeys() 获取所有键
- clear() 删除所有键
注意:解决value读写的中文乱码问题,添加代码setting.setIniCodec("GBK")或者setting.setIniCodec(QTextCodec::codecForName("GB2312"));即可。 目前还未解决其键值的中文乱码问题。
QT之QSettings 学习的更多相关文章
- (转)Qt Model/View 学习笔记 (七)——Delegate类
Qt Model/View 学习笔记 (七) Delegate 类 概念 与MVC模式不同,model/view结构没有用于与用户交互的完全独立的组件.一般来讲, view负责把数据展示 给用户,也 ...
- (转)Qt Model/View 学习笔记 (五)——View 类
Qt Model/View 学习笔记 (五) View 类 概念 在model/view架构中,view从model中获得数据项然后显示给用户.数据显示的方式不必与model提供的表示方式相同,可以与 ...
- Qt 智能指针学习(7种指针)
Qt 智能指针学习 转载自:http://blog.csdn.net/dbzhang800/article/details/6403285 从内存泄露开始? 很简单的入门程序,应该比较熟悉吧 ^_^ ...
- 第15.10节 PyQt(Python+Qt)入门学习:Qt Designer可视化设计界面组件与QWidget类相关的组件属性详解
PyQt学习有阵子了,对章节的骨架基本考虑好了,准备本节就写组件的属性的,结果一是日常工作繁忙,经常晚上还要加班,二是Qt的组件属性很多,只能逐一学习.研究和整理,花的时间有点长,不过终于将可视化设计 ...
- 【Qt官方例程学习笔记】Application Example(构成界面/QAction/退出时询问保存/用户偏好载入和保存/文本文件的载入和保存/QCommandLineParser解析运行参数)
The Application example shows how to implement a standard GUI application with menus, toolbars, and ...
- Qt 配置文件QSettings
QString appDirPath = QCoreApplication::applicationDirPath(); QSettings* configIniRead = new QSetting ...
- 【Qt 】QSettings写ini配置文件
QSettings写ini配置文件(Qt版本5.2): #include "inidemo.h" #include <QSettings> #include <Q ...
- 【Qt】QSettings读写注册表、配置文件【转】
简述 一般情况下,我们在开发软件过程中,都会缓存一些信息到本地,可以使用轻量级数据库sqlite,也可以操作注册表.读写配置文件. 关于QSettings的使用前面已经介绍过了,比较详细,见“更多参考 ...
- 【Qt】QSettings介绍【转】
简介 QSettings类提供了持久的跨平台应用程序设置. 用户通常期望应用程序记住它的设置(窗口大小.位置等)所有会话.这些信息通常存储在Windows系统注册表,OS X和iOS的属性列表文件中. ...
随机推荐
- alert样式优化
//alert样式优化 function alert(msg, mode) { //mode为空,即只有一个确认按钮,mode为1时有确认和取消两个按钮 msg = msg || ''; mode = ...
- NX二次开发-UFUN重命名工程图UF_DRAW_rename_drawing
NX9+VS2012 #include <uf.h> #include <uf_draw.h> #include <uf_part.h> UF_initialize ...
- Xcode输出中文
重写NSArray和NSDictionary分类Category就OK了! 导入头文件 #import <objc/runtime.h> + (void)load { static dis ...
- SPSS缺失值得分析处理
SPSS缺失值得分析处理 在资料收集的过程中,由于各种原因可能导致数据收集不全,就会产生缺失值,且这种情况往往无法避免.如果缺失值处理不当,就会导致分析结果精度降低,出现偏倚甚至是错误的理论,因此缺失 ...
- 关于idea中,web项目启动tomcat,访问资源报错404
背景: web项目启动tomcat,访问相应的资源,报错404,前提资源路径是没错的. 原因: 1.确定是不是web项目 不是的话: 配置web-inf的路径和webroot(web根目录)的路径 2 ...
- storm0.91集群部署
事先配置2台服务器配置好zookeeper,在配置文件中用zookeeper管理集群,配置文件如下 配置文件/conf/storm.yaml supervisor.slots.ports: 对于每个S ...
- angularJS和requireJS和angularAMD
最近因为要用到angularJS开发项目,因为涉及到的静态资源比较多,所以想把js文件通过requireJS来按需加载,这两个框架以前都使用过,但是结合到一起还没有用过,那就试一下,看能否达到目的. ...
- java-day12
数据结构 常用的数据存储结构:栈,队列,数组,列表,红黑树. 栈:先进后出(入口和出口在用一侧) 队列:先进先出 数组: 查询快:因为数组的地址是连续的,通过数组的首地址找到数组中的元素. 增/删慢: ...
- elasticsearch实现读写分离
简介 今天我们不讲三国,我们讲一讲elasticsearch(以下简称ES)读写分离,这是个好东西,全文索引的时候使用它贼得劲,对elasticsearch索引原理不太清楚的,请自行查找相关的文章 这 ...
- 今天真的很SB
在公司Review系统网页上,写了一篇几百字的作文, 然后突然手一抖,竟然没有保存就切换页面了, 赶快退回来...没了,啥都没了... 怎么办... 还好洒家N久之前看了一本什么什么杂七杂八的书, 里 ...