0
我已經寫了一些代碼:德爾福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()與4時,當在Android上運行...文件被正確填充,在Windows和運行0結果FileExists(IniPath)在Android上也給True。我也可以在編輯器中打開Android和Windows上的文件。 Android上的TMemIniFile有什麼區別嗎?
只有你發佈的內容很難說,但你確定INI文件是在Android上填充的嗎?請記住,每次將應用程序部署到您的設備時,存儲都會被擦乾淨。另外,你怎麼得到你的路?在Android上它應該是這樣的'TPath.GetDocumentsPath + PathDelim +'mysettings.ini'' – Sentient
是的,沒關係。文件在文件系統中......我現在編輯了問題。 –
您的路徑設置對我來說看起來不錯。我在Android上的一個項目中使用TMemINIFile,並且我沒有遇到任何問題。你可以嘗試創建一個單獨的項目,並嘗試一個非常簡單的讀/寫命令。 – Sentient