QT读写ini文件
#include <QSettings> //写文件 QSettings *iniWrite = new QSettings("Config.ini", QSettings::IniFormat); iniWrite ->beginGroup("Setting"); iniWrite ->setValue("Name", "Will"); iniWrite ->setValue("Age", "30"); iniWrite ->endGroup(); delete iniWrite ; 或者 QSettings *iniWrite = new QSettings("Config.ini", QSettings::IniFormat) iniWrite ->setValue("Setting/Name", "Will"); iniWrite ->setValue("Setting/Age", "30"); QColor clrValue(255,0,0); iniWrite ->setValue("Setting/Color", clrValue); delete iniWrite ; //读文件 QSettings *iniRead= new QSettings("Config.ini", QSettings::IniFormat); QString strName = iniRead->value("Setting/Name").tostring(); QString strAge= iniRead->value("Setting/Age").tostring(); QColor clrValue= iniRead->value("Setting/Color").value<QColor>(); delete iniRead;
//-----------------------------------补充
以上只能对QT包含的类型进行操作,自定义的结构和类需要用另外的办法
首先是使用Q_DECLARE_METATYPE();声明自己的结构,然后使用QVariant类
然而实际操作的时候发现自己的结构没办法保存,查资料说需要重载关于自定义结构体的输入和输出操作符,
重载之后仍然不能保存,为了不耽误时间,暂时先把问题放下,改成结构的元素一个个保存,后面
项目完成了再回头调试。