QSettings读写注册表和ini文件(转)

来源:互联网 发布:colorpix mac 编辑:程序博客网 时间:2024/05/28 18:43

转自:http://blog.csdn.net/yhf365/archive/2009/05/11/4166645.aspx

Qt刚上手,用起来有点感觉功能很强大,但是资料太少。

刚才上网查Qt怎么操作注册表,可网上几乎找不到什么东西。就去查Qt文档,摸索了一会儿,总算摸索出来了。相当简单。竟比Delphi还简单,比起VC就更不用提了。需要#include

只举几个简单的例子:

1、用QSettings写注册表

view plaincopy to clipboardprint?
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读注册表

view plaincopy to clipboardprint?
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文件:

view plaincopy to clipboardprint?
QSettings *ConfigIni = new QSettings("D://a.ini",QSettings::IniFormat,0);
ConfigIni->setValue("/config/node1",ui->lineEdit->text());
delete ConfigIni;

4、用QSettings读ini文件:

view plaincopy to clipboardprint?
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部分讲的很清楚,在这里我就不多说了。也该睡觉了~

Powered by Zoundry Raven