您的位置:首页 > 其它

QSettings读写注册表和ini文件

2014-10-22 16:26 295 查看
http://blog.csdn.net/yhf365/article/details/4166645

QT是个跨平台的库,而注册表是Windows上特有的

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

    只举几个简单的例子:

1、用QSettings写注册表

[cpp] view
plaincopy

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读注册表

[cpp] view
plaincopy

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文件:

[cpp] view
plaincopy

QSettings *ConfigIni = new QSettings("D://a.ini",QSettings::IniFormat,0);  

ConfigIni->setValue("/config/node1",ui->lineEdit->text());  

delete ConfigIni;  

4、用QSettings读ini文件:

[cpp] view
plaincopy

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部分讲的很清楚,在这里我就不多说了。也该睡觉了~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: