QSettings 读写配置文件

在.net、java等项目中,*.config文件是最常见的,也是最为重要的,本章节介绍通过QSettings类来实现对配置文件的读取和修改操作。

在写代码前,我们先在代码文件夹下新建个文本文件,并将文件名及后缀名改成config.txt,那么很多朋友可能会有疑惑,为什么后缀名要用txt呢,其实我最早是用ini当后缀名,但是发现文件中的中文在代码中修改配置文件后,会变成不知道什么编码的字符串。也尝试过将配置文件的编码格式修改成ANSI、GBK等,但还是未能解决问题。

所在建议大家配置文件的后缀名最好是以txt,然后配置文件的编码格式最好是UTF-8

这样能避免中文乱码的问题。

#include "QSettings"

//创建配置文件操作对象

QSettings * config = new QSettings(path, QSettings::IniFormat);

//解决中文乱码 *.ini文件格式 ANSI="system" UTF-8="utf-8"

config->setIniCodec(QTextCodec::codecForName("UTF-8"));

//将信息写入配置文件

config->beginGroup("section");

config->setValue("keyword", keyvalue);

config->endGroup();

//读配置文件

QString keyvalue = config->value("section/keyword").toString();

//释放对象

delete config;

也可以使用我的另一篇文章《QSettings封装成读写配置文件操作类-CSDN博客》里封装好的iniFile操作类。

你可能感兴趣的:(QT,C++,qt,c++)