Qt基础-使用QSettings保存读取配置文件
QSettings类简介
QSettings可以用来存储或读取配置文件,不同于普通文本格式的字符串存取方式,QSettings可以存储bool值、字体QFont、颜色QColor等变量。
存储
- 使用方法举例:
- 定义QSettings变量,这个构造函数中,第一个参数表示配置文件的路径及文件名,第二个参数表示是INI配置文件;
QSettings *cfgFile = new QSettings("./sysConfig.ini", QSettings::IniFormat);
- 设置编码格式,设置后可以存储中文,否则写入中文会有乱码;
cfgFile->setIniCodec(QTextCodec::codecForName("GB2312"));
- 存储数据,通过setValue()函数,第一个参数表示区分的标识,用’/'分隔,第二个参数是QVariant型的变量
QFont font = ...;
int a = ...;
bool b = ...;
QColor clr = ...;
cfgFile->setValue("Environment/Font", font); //字体
cfgFile->setValue("Environment/Size", a); //整型
cfgFile->setValue("Environment/Bold", b); //bool型
cfgFile->setValue("Environment/Color", clr); //颜色
读取
- 通过value()函数读取,参数为区分的标识
QFont font = cfgFile->value("Environment/Font");
int a = cfgFile->value("Environment/FontSize").toInt();
bool b = cfgFile->value("Environment/FontBold").toBool();
QColor clr = cfgFile->value("Environment/Color").value<QColor>();