转自:http://blog.ednchina.com/frenkie/257019/message.aspx
需要#include <QSettings>
只举几个简单的例子:
1、用QSettings写注册表
1. QSettings *reg = new QSettings("HKEY_CURRENT_USER//Software//yinhaifan",
2. QSettings::NativeFormat);
3. reg->setValue("registered",true);
4. delete reg;
QSettings *reg = new QSettings("HKEY_CURRENT_USER//Software//yinhaifan", QSettings::NativeFormat); reg->setValue("registered",true); delete reg;
当然reg->setValue还可以写入字符串,整型之类的数据。
比如reg->setValue("registered","yes");
2、用QString读注册表
1. QSettings *reg = new QSettings("HKEY_CURRENT_USER//Software//yinhaifan",
2. QSettings::NativeFormat);
3. if (reg->value("registered",false).toBool())
4. {
5. QMessageBox::information(NULL,"information","registered");
6. }
7. delete reg;
QSettings *reg = new QSettings("HKEY_CURRENT_USER//Software//yinhaifan", QSettings::NativeFormat); if (reg->value("registered",false).toBool()) { QMessageBox::information(NULL,"information","registered"); } delete reg;
还可以toInt(),toString()等。
3、用QSettings写ini文件:
1. QSettings *ConfigIni = new QSettings("D://a.ini",QSettings::IniFormat,0);
2. ConfigIni->setValue("/config/node1",ui->lineEdit->text());
3. delete ConfigIni;
QSettings *ConfigIni = new QSettings("D://a.ini",QSettings::IniFormat,0); ConfigIni->setValue("/config/node1",ui->lineEdit->text()); delete ConfigIni;
4、用QSettings读ini文件:
1. QSettings *ConfigIni = new QSettings("D://a.ini",QSettings::IniFormat,0);
2. ui->lineEdit_2->setText(ConfigIni->value("/config/node1","20").toString());
3. delete ConfigIni;
QSettings *ConfigIni = new QSettings("D://a.ini",QSettings::IniFormat,0); ui->lineEdit_2->setText(ConfigIni->value("/config/node1","20").toString()); delete ConfigIni;
这几段代码都是在Qt Creator里面写的,所以用ui->lineEdit*->text()和ui->lineEdit*->setText()做输入和输出了。
在文档中的QSettings Class Reference部分讲的很清楚