QSettings使用中出现的问题及正确示例

为什么80%的码农都做不了架构师?>>>   hot3.png

背景:使用QSettings读写配置文件

示例及需要注意的问题:

①写配置文件

    QSettings settings("Option.ini", QSettings::IniFormat);
    settings.beginGroup("Config");//此句不可缺少
    settings.setValue("Server", "我是服务器");
    settings.setValue("Client", "我是客户端");
    settings.endGroup();//此句不可缺少

②读配置文件

    QSettings settings("Option.ini", QSettings::IniFormat);
//    settings.beginGroup("Config");读取的时候不可加
    qDebug()<     qDebug()< //    settings.endGroup();读取的时候不可加

总结:setValue()必须被包含在beginGroup()/endGroup()之间,beginGroup()/endGroup()之间不可包含value()

    QString qstrConfigPath = qApp->applicationDirPath() + "/Config.ini";
    QSettings* pConfigReader = new QSettings(qstrConfigPath, QSettings::IniFormat);
    QString qstrCIP = pConfigReader->value("/url/cip").toString();
    QString qstrCPort = pConfigReader->value("/url/cport").toString();
    QString qstrSIP = pConfigReader->value("/url/sip").toString();
    QString qstrSPort = pConfigReader->value("/url/sport").toString();
    QString qstrNO = pConfigReader->value("/screen/no").toString();
    delete pConfigReader;

注:applicationDirPath()为“获取当前执行程序路径”

转载于:https://my.oschina.net/qtplus/blog/698466

你可能感兴趣的:(QSettings使用中出现的问题及正确示例)