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"