我正在使用 Delphi XE5 进行 Android 开发。
我喜欢将 TStringList 保存并加载到 SDCard 上的文本文件中。
当我将 TStringList 保存到文件时,一切正常。保存后我可以调用 LoadFromFile 并加载文件。
问题是当我关闭应用程序并再次打开它时。文件不存在?
这是文件位置 FileName := '/data/data/[com.MY.APP]/files/File.txt'
在应用程序用户权限 = 写入外部存储:真
我需要将文件保存到另一个文件夹吗?
谢谢你的帮助。
这在我的代码和设置中。
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;
最佳答案
是的,
AppPath := TPath.GetHomePath;
FileName := TPath.Combine(AppPath, 'File.txt');
工作正常。
不要忘记将单位 System.IOUtils 添加到您的使用子句中。
谢谢 xJernej。