1. 程式人生 > >MFC利用系統API讀取INI配置檔案

MFC利用系統API讀取INI配置檔案

confing.ini中的內容

[賬號]
account=123|456

[是否修理裝備]
repair=1

 


讀取INI字串:

CString pourin;

GetPrivateProfileString(L"賬號",L"account",NULL,pourin.GetBufferSetLength(MAX_PATH),MAX_PATH,L"C:\\Warehouse\\config.ini");


引數1:讀取的小節名
引數2:小節下的的變數名
引數3:如果沒讀取到指定內容可以預設返回一個值給接收變數,可以為NULL,表示不返回預設值。
引數4:用一個字元變數接收讀取到的值,此引數預設資料型別為CHAR *無法直接使用string或CString型別;預設應該填寫一個空的字元陣列例如:CHAR ht[255]。也就是資料儲存空間大小為一開始就指定的值。一般來說INI的鍵值都不會太長,如果太長的話會無法讀取。所以一般指定為255或者MAX_PATH。MAX_PATH為WINDOWS預設指定的一個常量巨集,其長度一般為260。

引數5:指定緩衝區大小。
引數6:ini檔案的路徑,可以放到exe目錄下然後用相對路徑".\\config.ini"


讀取INI裡的數值


int burne=GetPrivateProfileInt(L"是否修理裝備",L"repair",NULL,L"C:\\Warehouse\\config.ini");

返回值:返回讀取到的數值


引數1:讀取的小節名
引數2:小節下的的變數名
引數3:如果沒讀取到指定內容可以預設返回一個值給接收變數,可以為NULL,表示不返回預設值。
引數6:ini檔案的路徑,可以放到exe目錄下然後用相對路徑".\\config.ini"


寫入內容到INI:


CString pourin=L"1";
WritePrivateProfileStringW(L"是否修理裝備",L"repair",pourin,L"C:\\Warehouse\\config.ini");


引數1:小節名
引數2:小節下的的變數名
引數3:要寫入ini變數中的內容
引數4:ini檔案的路徑,可以放到exe目錄下然後用相對路徑".\\config.ini"