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);
效果如下: