QSetting配置文件

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);

效果如下:

 

 

 

 

 

 

 

 

 

原文地址:https://www.cnblogs.com/tangyuanjie/p/14028233.html