Qt ini配置文件

来源:互联网 发布:笔记本电脑网络不可用 编辑:程序博客网 时间:2024/06/06 04:42

我们在做项目的时候,经常需要用到ini配置文件来保存应用程序的一些设置信息,比如保存用户的的设置界面信息、窗口大小等。

在这里我简单的学习了一下配置文件的使用,qt中有处理配置文件的类QSettings.

对于配置文件的应用一般包含键值的增、删、改、查

增、改:该函数当键不存在时添加,存在时直接覆盖

void setValue(const QString &key, const QVariant &value)

void remove(const QString &key)

bool contains(const QString &key) const // 查看改键是否在配置文件中,是返回true,否则返回falseQVariant value(const QString &key, const QVariant &defaultValue = QVariant()) const <span style="font-family: Arial, Helvetica, sans-serif;">// 获取键值,第二个参数是当键值不存在时,作为默认值返回</span>
下面自己测试的小例子

头文件(ini.h)

#ifndef INI_H#define INI_H#include <QString>bool isKeyExist(QString strKey);void setKeyValue(QString strKey, QString strValue);void removeKey(QString strKey);QString getKetValue(QString strKey);#endif // INI_H
源文件(ini.cpp)
#include <ini.h>#include <QSettings>const QString strIniFileName = "test.ini";/** * 描述:判断配置文件中,该键值是否存在 * 参数:strKey, 键值名称 * 返回:true,存在;false,不存在; * */bool isKeyExist(QString strKey){    QSettings settings(strIniFileName, QSettings::IniFormat);    return settings.contains(strKey);}/** * 描述:添加、修改键值到配置文件中 * 参数:strKey, 键值名称 * 参数:strValue,键值 */void setKeyValue(QString strKey, QString strValue){    QSettings settings(strIniFileName, QSettings::IniFormat);    settings.setValue(strKey, strValue);}/** * 描述:删除键值 * 参数:strKey,要删除的键值 */void removeKey(QString strKey){    QSettings settings(strIniFileName, QSettings::IniFormat);    settings.remove(strKey);}/** * 描述:获取键的值 * 参数:strKey,要获取的键值名称 * 返回:得到的键的值 */QString getKetValue(QString strKey){    QSettings settings(strIniFileName, QSettings::IniFormat);    return settings.value(strKey, "").toString();//}
main.cpp
#include <QCoreApplication>#include <QString>#include <ini.h>#include <QDebug>int main(int argc, char *argv[]){    QCoreApplication a(argc, argv);    qDebug()<<isKeyExist(QString("name"))<<endl;    setKeyValue(QString("name"), QString("my name is qt"));    qDebug()<<getKetValue(QString("name"))<<endl;    removeKey(QString("name"));    qDebug()<<isKeyExist(QString("name"))<<endl;    return 0;}



0 0
原创粉丝点击