QSettings操作配置文件

用Qt写界面时,难免会进行本地信息的保存,可以使用轻量级数据库sqlite,也可以使用QSettings读写配置文件。
    如何来进行读写呢?如下,使用QSettings写一个通用的读写方法:
 bool Util::writeInit(QString path, QString user_key, QString user_value)
{
if(path.isEmpty() || user_key.isEmpty())
{
return false;
}
else
{
//创建配置文件操作对象
QSettings *config = new QSettings(path, QSettings::IniFormat);
 
//将信息写入配置文件
config->beginGroup("config");
config->setValue(user_key, user_value);
config->endGroup();
 
return true;
}
 
bool Util::readInit(QString path, QString user_key, QString &user_value)
{
user_value = QString("");
if(path.isEmpty() || user_key.isEmpty())
{
return false;
}
else
{
//创建配置文件操作对象
QSettings *config = new QSettings(path, QSettings::IniFormat);
 
//读取用户配置信息
user_value = config->value(QString("config/") + user_key).toString();
 
return true;
}  
}
 
//获取界面用户输入的配置内容
QString address = address_line_edit->text();  //地址
QString port = port_line_edit->text();  //端口
 
向user.ini配置文件中写入地址、端口
bool is_address = Util::writeInit(QString("./user.ini"), ADDRESS, address);
bool is_port = Util::writeInit(QString("./user.ini"), PORT, port);
 
从user.ini配置文件中读取地址、端口
QString address_value;
QString port_value;
bool is_address = Util::readInit(QString("./user.ini"), ADDRESS, address_value);
bool is_port = Util::readInit(QString("./user.ini"), PORT, port_value);
 
效果如下:
QSettings操作配置文件
 
注:
    技术在于交流、沟通,转载请注明出处并保持作品的完整性。
posted @ 2014-01-26 10:53  蓝夜  阅读(611)  评论(0编辑  收藏  举报