简述
使用QT QSettings读写配置文件,来保存程序的初始值。
在qt 5.9.3下使用的情况。
简单使用
//1.创建
QSettings(QCoreApplication::applicationDirPath()+"/config.ini", QSettings::IniFormat, this);
//2.更新值 // key,value
settings->setValue("/setting/currentTabIndex", index);
//3.读取值
settings->value("/setting/currentTabIndex").toInt();
注意点:
new QSettings 创建后没有写文件的话,不会创建文件;
new QSettings 第二个参数格式必须要写,不然生成文件不成功。
读取中文
windows下编码方式为gbk,为了在本地文件显示中文,需设置QSetting的编码方式。
QSettings set = new QSettings(filename,QSettings::IniFormat);
set->setIniCodec(QTextCodec::codecForName("GBK"));
需要在创建QSetting后立刻设置编码方式。
这样可以正确的读中文了,使用value函数获取到值后QSettings自动对其编码进行了处理,直接可以使用QString,
写入时可以直接把中文内容的QString写入QSetting里,QSettings 自动会转码存储,使得文件能正确显示中文 。