Qt中QSettings的简单实用

版权声明:本文为博主原创文章,未经同意不允许转载! https://blog.csdn.net/wb175208/article/details/86027080

QT中提供了可持久化的文件保存机制,利用QSettings可以把内存中的数据保存到地电脑的磁盘中。

QSettings可以保存的格式有几种:

QSettings::NativeFormat
QSettings::Registry32Format
QSettings::Registry64Format
QSettings::IniFormat //今天重点说的ini配置文件
QSettings::InvalidFormat

在实际项目开发过程中,经常会需要一些配置选项的读写,比如程序启动时版本信息、风格样式的读取等等,都需要通过配置文件中的记录读取。

生成一个配置文件:

	QSettings* cfg = new QSettings("Config.ini", QSettings::IniFormat);
	
	cfg->beginGroup("User");
	cfg->setValue("Name", "ZhangSan");
	cfg->setValue("Sex", "Man");
	cfg->setValue("Age", "19");
	cfg->endGroup();

	cfg->beginGroup("Book");
	cfg->setValue("Name", "Oracle");
	cfg->setValue("Price", "52");
	cfg->setValue("ISBN", "13246789");
	cfg->endGroup();

	cfg->setValue("Msg/ID", 456);
	cfg->setValue("Msg/Value", "Hello World!");
	cfg->setValue("Msg/From", "PC");
	cfg->setValue("Msg/To", "Me");

配置文件中的内容:

[User]
Name=ZhangSan
Sex=Man
Age=19

[Book]
Name=Oracle
Price=52
ISBN=13246789

[Msg]
ID=456
Value=Hello World!
From=PC
To=Me

读取配置文件中的内容:

	cfg->beginGroup("Book");
	QString bookName = cfg->value("Name","null").toString();
	qDebug() << bookName;
	QString bookISBN = cfg->value("ISBN", "null").toString();
	qDebug() << bookISBN;
	cfg->endGroup();

	QString msgValue = cfg->value("Msg/Value").toString();
	qDebug() << msgValue;
	QString msgTo = cfg->value("Msg/To").toString();
	qDebug() << msgTo;

只要是注意在生成和读取的时候,都要对应好相应的组名和键值就可以了!是不是很简单。

猜你喜欢

转载自blog.csdn.net/wb175208/article/details/86027080