使用FireMonkey及其跨平台,我应该在哪里存储我的应用程序数据?

时间:2011-09-15 15:28:53

标签: delphi directory delphi-xe2 firemonkey

通常,在Windows中,我将应用程序的数据保存在用户文件夹中(%appdata%)。

为此,我使用链接到Windows的函数ExpandEnvironmentStrings来获取我需要的文件夹,并将其存储在我的 inifile 的子文件夹中。

是否有最佳实践来管理并符合所有支持的平台(Windows 32b,64b和Mac)?


我成功地测试过:

procedure TfrmMain.SaveSettings;
var
  fnINI: TFileName;
  ini  : TIniFile;
begin
  fnINI := IncludeTrailingPathDelimiter(GetHomePath) + IncludeTrailingPathDelimiter(APP_NAME) + ChangeFileExt(APP_NAME, '.ini');
  if ForceDirectories(ExtractFilePath(fnINI)) then
  begin
    ini := TIniFile.Create(fnINI);
    try
      ini.WriteString(INI_CONNECTION, INI_IP, edtIP.Text);
    finally
      ini.Free;
    end;
  end;
end;

1 个答案:

答案 0 :(得分:22)

没有尝试过XE2,但可能你可以使用SysUtils.GetHomePath。同时检查IOUtils,您可以在其中找到有用的记录(TFileTPathTDirectory),以便管理文件,路径和目录。他们应该支持不同的平台。