// QSettings的使用
// 1.QSettings保存ini配置文件
QString filePath = QCoreApplication::applicationDirPath() + "/myTest.ini";
QString strGroupNameUser = "user";
QString strGroupNameDevice = "device";
QString strUser = "admin";
QString strPassword = "A123456";
QString strIp = "192.168.0.2";
QString strPort = "8000";
QSettings setting(filePath ,QSettings::IniFormat);
// 分组保存
setting.beginGroup(strGroupNameUser);
setting.setValue("user_name", strUser);
setting.setValue("password", strPassword);
setting.endGroup();
setting.beginGroup(strGroupNameDevice);
setting.setValue("IP", strIp);
setting.setValue("port", strPort);
setting.endGroup();
// 2.删除一个键值对
// 删除一组setting.remove(strGroupNameDevice)
// 删除全部的键值对setting.clear()
setting.remove(strGroupNameUser+"/password");
setting.remove(strGroupNameDevice+"/port");
qDebug() << setting.allKeys();
// 3.修改键值的内容
setting.setValue(strGroupNameUser+"/user_name","user1");
// 4.QSettings读取ini文件
QSettings setting2(filePath, QSettings::IniFormat);
setting2.beginGroup(strGroupNameUser);
QString userName2 = setting2.value("user_name").toString();
QString userPwd2 = setting2.value("password").toString();//被删除后,读出来是空字符串
setting2.endGroup();
setting2.beginGroup(strGroupNameDevice);
QString deviceIp = setting2.value("IP").toString();
int devicePort2 = setting2.value("port").toInt();//被删除后,读出来的值是0
setting2.endGroup();
qDebug() << userName2 << " " << userPwd2 << " " << deviceIp << " " << devicePort2;