DELPHI XE5 Android - SDCard的SAVE / LOAD文件

时间:2013-12-14 14:04:25

标签: android delphi delphi-xe5

我正在使用Delphi XE5进行Android开发。

我喜欢将TStringList保存并加载到SDCard上的文本文件中。 当我将TStringList保存到文件时,一切正常。保存后我可以调用LoadFromFile并加载文件。

问题是当我关闭应用程序并再次打开它时。文件不存在? 这是文件位置FileName := '/data/data/[com.MY.APP]/files/File.txt'

在应用程序用户权限下= 写入外部存储:True

我是否需要将文件保存到另一个文件夹?

寻求帮助。

这在我的代码和设置中。

procedure LOAD;
var
  TextFile: TStringList;
  FileName: string;
begin
     TextFile := TStringList.Create;
    try
      FileName := Format('%s/File.txt', [GetHomePath]);
      if FileExists(FileName) then
      begin
        TextFile.LoadFromFile(FileName);
        Memo1.Lines.Text := TextFile.Text
      end
      else
        ShowMessage('File not exists!');
    finally
      TextFile.Free;
    end;     

end;

procedure SAVE;
var
  TextFile: TStringList;
  FileName: string;
begin   
    TextFile := TStringList.Create;
    try
      FileName := Format('%s/File.txt', [GetHomePath]);
      TextFile.Text := Memo1.Lines.Text;
      TextFile.SaveToFile(FileName);
    finally
      TextFile.Free;
    end;     
end;

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:3)

是的,

AppPath := TPath.GetHomePath; 
FileName := TPath.Combine(AppPath, 'File.txt');

工作正常。 不要忘记将单元System.IOUtils添加到uses子句中。

谢谢xJernej。