問題描述:
從配置文件ini讀取字段,用notepad.exe保存一下,GetPrivateProfileString讀取字段就讀取不到,錯誤值是2,文件不存在,實際上文件存在的。
GetPrivateProfileString能正確取值的前體條件是:
ini文件的編碼格式爲ANSI,才能正確讀取。
這個是BOM,不同的編碼BOM如下:
1 2 3 4 5 |
Bytes Encoding ---------------------------- FE FF UTF16BE FF FE UTF16LE EF BB BF UTF8 |
實際上,notepad.exe 保存的時候:有文件頭信息的選擇:
如果ini正常讀取值,建議用notepad.exe保存的時候,默認ansi編碼格式。這樣函數的取值,就不會存在問題了。