淘先锋技术网

首页 1 2 3 4 5 6 7

http://blog.csdn.net/anonymousrookie/article/details/47843057

INI

INI文件格式是某些平台或软件上的配置文件的非正式标准,以节(section)和键(key)构成,常用于微软Windows操作系统中。INI文件是Initialization File的缩写,即初始化文件。除了windows现在很多其他操作系统下面的应用软件也有.ini文件,用来配置应用软件以实现不同用户的要求。一般不用直接编辑这些.ini文件,应用程序的图形界面即可操作以实现相同的功能。INI文件被用来对操作系统或特定程序初始化或进行参数设置。


文件格式


节(section)

节用方括号括起来,单独占一行,例如:

[section]


键(key)
键(key)又名属性(property),单独占一行用等号连接键名和键值,例如:
name=value


QT读写INI文件

Qt4.0一个非常有用的类QSettings,在windows平台,它提供了ini文件读写,注册表读写的功能。而且使用也非常简单。
QSettings::Format有两种:
QSettings::NativeFormat在windows平台可以读写windows注册表;
QSettings::IniFormat可以读写ini格式的配置文件。



  1. //读取配置文件  
  2. void Dialog::on_pushButton_load_clicked()  
  3. {  
  4.     QString iniFilePath = "F:/QT_Project_201508/TestConfigFile/config_files/MyINI.ini";  
  5.     QSettings settings(iniFilePath,QSettings::IniFormat);  
  6.   
  7.     QString G1_path = settings.value("Group1/Path").toString();  
  8.     QString G1_fileName = settings.value("Group1/FileName").toString();  
  9.   
  10.     int G2_size = settings.value("Group2/Count").toInt();  
  11.     int G2_price = settings.value("Group2/Price").toInt();  
  12.   
  13.     ui->lineEdit_Path->setText(G1_path);  
  14.     ui->lineEdit_FileName->setText(G1_fileName);  
  15.     ui->lineEdit_Count->setText(QString::number(G2_size));  
  16.     ui->lineEdit_Price->setText(QString::number(G2_price));  
  17. }  
  18. //写入配置文件  
  19. void Dialog::on_pushButton_update_clicked()  
  20. {  
  21.     QString iniFilePath = "F:/QT_Project_201508/TestConfigFile/config_files/MyINI.ini";  
  22.     QSettings settings(iniFilePath,QSettings::IniFormat);  
  23.   
  24.     settings.setValue("Group1/Path",ui->lineEdit_Path->text());  
  25.     settings.setValue("Group1/FileName",ui->lineEdit_FileName->text());  
  26.     settings.setValue("Group2/Count",ui->lineEdit_Count->text().toInt());  
  27.     settings.setValue("Group2/Price",ui->lineEdit_Price->text().toInt());  
  28. }  



配置文件:



程序运行结果: