Delphi XE5 - Android - TMemIniFile行为异常



我写了一些代码:

MnemonicList := TStringList.Create();
{$IFDEF Android}
  IniPath := TPath.Combine(TPath.GetDocumentsPath, ADefaultLanguage + '.ini');  { Internal }
{$ENDIF}
{$IFDEF Win32}
  IniPath := TPath.Combine(ExtractFilePath(ParamStr(0)), 'Lang' + ADefaultLanguage + '.ini');
{$ENDIF}
if FileExists(IniPath) then
begin
 MemIniFile := TMemIniFile.Create(IniPath);
 ShowMessage(IniPath);
 MemIniFile.ReadSections(MnemonicList);
 ShowMessage(IntToStr(MnemonicList.Count));
end;

第二个 ShowMessage() 在 Windows 上运行时结果为 4,在 Android 上运行时为 0...文件被正确填充,FileExists(IniPath)在Android上也给出了True。我也可以在编辑器中打开Android和Windows上的文件。在Android上的TMemIniFile上有什么区别吗?

INI 文件字符编码有问题。当我更改为不带 BOM 的 UTF-8 时,它开始工作。

相关内容

  • 没有找到相关文章

最新更新