zoukankan      html  css  js  c++  java
  • 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);

    效果如下:

     

     

     

     

     

     

     

     

     

  • 相关阅读:
    QT 开发小记
    linux c 时间函数
    ubuntu 16.04 登录后黑屏
    ubuntu 16.04 修正网卡与ifname对应关系
    HTML5 Shiv完美解决IE(IE6/IE7/IE8)不兼容HTML5标签的方法
    vue里面引入jq的方法
    如何禁用手机自带的输入法软键盘
    vue的首页渲染了两次的原因以及解决方法
    vue使用hightchats
    解决微信小程序使用switchTab跳转后页面不刷新的问题
  • 原文地址:https://www.cnblogs.com/tangyuanjie/p/14028233.html
Copyright © 2011-2022 走看看