QT讀寫配置檔案(.ini)
阿新 • • 發佈:2019-02-01
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格式的配置檔案。
//讀取配置檔案 void Dialog::on_pushButton_load_clicked() { QString iniFilePath = "F:/QT_Project_201508/TestConfigFile/config_files/MyINI.ini"; QSettings settings(iniFilePath,QSettings::IniFormat); QString G1_path = settings.value("Group1/Path").toString(); QString G1_fileName = settings.value("Group1/FileName").toString(); int G2_size = settings.value("Group2/Count").toInt(); int G2_price = settings.value("Group2/Price").toInt(); ui->lineEdit_Path->setText(G1_path); ui->lineEdit_FileName->setText(G1_fileName); ui->lineEdit_Count->setText(QString::number(G2_size)); ui->lineEdit_Price->setText(QString::number(G2_price)); } //寫入配置檔案 void Dialog::on_pushButton_update_clicked() { QString iniFilePath = "F:/QT_Project_201508/TestConfigFile/config_files/MyINI.ini"; QSettings settings(iniFilePath,QSettings::IniFormat); settings.setValue("Group1/Path",ui->lineEdit_Path->text()); settings.setValue("Group1/FileName",ui->lineEdit_FileName->text()); settings.setValue("Group2/Count",ui->lineEdit_Count->text().toInt()); settings.setValue("Group2/Price",ui->lineEdit_Price->text().toInt()); }
配置檔案:
程式執行結果: