Qt | How to load/save .ini File
2017-08-17 本文已影响0人
Machin_Yin
本文作为个人笔记用。文章出处:http://ohurochan.jp/blog/en/development/qt-how-to-loadsave-ini-file-with-qt
This note is written for setting/getting parameter of App to/from “.ini” file.
[h1]sample.ini
# this is a Sample ini file
[GROUPA]
PARAM1 = 10
PARAM2 = 20
[GROUPB]
PARAM1 = 30
PARAM2 = 40
PARAM3 = ABC
[h1] how to load params from .ini
// Load Application params from ini file
QSettings settings( iniFileName, QSettings::IniFormat );
settings.beginGroup("GROUPA");
int param1 = settings.value("PARAM1").toInt();
int param2 = settings.value("PARAM2").toInt();
settings.endGroup();
settings.beginGroup("GROUPB");
int param1 = settings.value("PARAM1").toInt();
int param2 = settings.value("PARAM2").toInt();
int param2 = settings.value("PARAM3").toString();
settings.endGroup();
This code will get
GROUPA.param1 = 10
GROUPA.param2 = 20
GROUPB.param1 = 30
GROUPB.param2 = 40
GROUPB.param3 = ABC
Get all sections
QSettings settings( "sample.ini", QSettings::IniFormat );
QStringList keys = settings.childGroups();
qDebug() << "keys == " << keys;
This code will get
keys == ("GROUPA", "GROUPB")
Delete group
settings.remove(keys.at(1));
keys = settings.childGroups();
qDebug() << "keys == " << keys;
This code will get
keys == ("GROUPA")
The sample.ini will become
# this is a Sample ini file
[GROUPA]
PARAM1 = 10
PARAM2 = 20
[h1] how to save params to .ini
// Load Application params from ini file
QSettings settings( iniFileName, QSettings::IniFormat );
settings.beginGroup("GROUPA");
settings.setValue("PARAM1", 10);
settings.setValue("PARAM2", 20);
settings.endGroup();
settings.beginGroup("GROUPB");
settings.setValue("PARAM1", 30);
settings.setValue("PARAM2", 40);
settings.setValue("PARAM3", "ABC");
settings.endGroup();