在编辑服务端配置文件时,发现对于ini文本文件:
需注意点一:如果另存为UTF-8保存的实际上格式是UTF-8-BOM编码格式;
但是两种格式是存在差异的:
因此造成在使用C#调用系统DLL读取文件时并未报错,但是当使用对应INI文件内容时第一个域内的内容不存在于字典中:
[DllImport("kernel32", CharSet = CharSet.Auto)]
private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath);
需注意点二:如果保存的是ANSI格式,如果文本中有中文或中文字符;
实际文件格式与操作系统有关系,
对于中文简体操作系统,格式是GB2312(简体中文);
对于英文操作系统,格式是ANSI但是,中文或中文字符数据出现乱码。