QSettings ,简单来说,QSettings提供了应用程序中用户设置的接口,应用接口可以帮助我们实现特定的功能。比如窗口大小、位置、文件的存储路径等等。
QSettings可以保存的格式有几种:
QSettings::NativeFormat
QSettings::Registry32Format
QSettings::Registry64Format
QSettings::IniFormat //今天重点说的ini配置文件
QSettings::InvalidFormat
生成一个配置文件(写)
QSettings settings("Option.ini", QSettings::IniFormat);
settings.beginGroup("DevOption");
settings.setValue("mainFun", 25);
settings.setValue("subFun", 40);
settings.setValue("service", 1);
settings.endGroup();
settings.beginGroup("Test");
settings.setValue("mainFun", 25);
settings.setValue("subFun", 40);
settings.setValue("service", 1);
settings.endGroup();
配置文件Option.ini内容如下:
[DevOption]
mainFun=25
subFun=40
service=1
[Test]
mainFun=25
subFun=40
service=1
读取一个配置文件(读)第一种方法
QSettings settingsread("Option.ini", QSettings::IniFormat);
int mainFun = settingsread.value("DevOption/mainFun").toInt();
QString service = settingsread.value("DevOption/service").toString();
读取一个配置文件(读)第二种方法
settingsread.beginGroup("DevOption");
int mainFun = settingsread.value("mainFun").toInt();
QString service = settingsread.value("service").toString();
settingsread.endGroup();
为了看到效果,用个弹出框展示下,如图
char buf[1024];
sprintf_s(buf, "mainFun=%d,service=%s", mainFun, service.toStdString().c_str());
QMessageBox::information(NULL, "IniTest", buf);