一 背景
1 ini文件介紹
.ini 文件是Initialization File的縮寫,即初始化文件。
除了windows現在很多其他操作系統下面的應用軟件也有.ini文件,用來配置應用軟件以實現不同用戶的要求。一般不用直接編輯這些.ini文件,應用程序的圖形界面即可操作以實現相同的功能。它可以用來存放軟件信息,注冊表信息等。
2 ini文件格式
INI文件由節、鍵、值組成。
節
[section]
參數(鍵=值)
name=value
下面是一個ini文件的例子
[Section1 Name]
KeyName1=value1
KeyName2=value2
...
[Section2 Name]
KeyName21=value21
KeyName22=value22
其中:[Section1 Name]用來表示一個段落。因為INI文件可能是項目中共用的,所以使用[Section Name]段名來區分不同用途的參數區。例如:[Section1 Name]表示傳感器靈敏度參數區;[Section2 Name]表示測量通道參數區等等。
注解:使用分號表示(;)。在分號后面的文字,直到該行結尾都全部為注解。
二 Qt寫ini文件
-
-
-
int main(int argc, char *argv[])
-
{
-
QCoreApplication a(argc, argv);
-
//Qt中使用QSettings類讀寫ini文件
-
//QSettings構造函數的第一個參數是ini文件的路徑,第二個參數表示針對ini文件,第三個參數可以缺省
-
QSettings *configIniWrite = new QSettings("hahaya.ini", QSettings::IniFormat);
-
//向ini文件中寫入內容,setValue函數的兩個參數是鍵值對
-
//向ini文件的第一個節寫入內容,ip節下的第一個參數
-
configIniWrite->setValue( "/ip/first", "192.168.0.1");
-
//向ini文件的第一個節寫入內容,ip節下的第二個參數
-
configIniWrite->setValue( "ip/second", "127.0.0.1");
-
//向ini文件的第二個節寫入內容,port節下的第一個參數
-
configIniWrite->setValue( "port/open", "2222");
-
//寫入完成后刪除指針
-
delete configIniWrite;
-
-
return a.exec();
-
}
運行程序后,打開程序目錄下的hahaya.ini文件,結果如下圖所示:
三 Qt讀ini文件
-
-
-
-
-
int main(int argc, char *argv[])
-
{
-
QCoreApplication a(argc, argv);
-
-
QSettings *configIniRead = new QSettings("hahaya.ini", QSettings::IniFormat);
-
//將讀取到的ini文件保存在QString中,先取值,然后通過toString()函數轉換成QString類型
-
QString ipResult = configIniRead->value( "/ip/second").toString();
-
QString portResult = configIniRead->value( "/port/open").toString();
-
//打印得到的結果
-
qDebug() << ipResult;
-
qDebug() << portResult;
-
//讀入入完成后刪除指針
-
delete configIniRead;
-
return a.exec();
-
}
程序運行截圖:
轉自:https://blog.csdn.net/qiurisuixiang/article/details/7760828