如何在不删除文件的先前内容的情况下让Delphi写入文本文件? 我已经知道如何添加文本,但是一旦我尝试添加更多文本,它就会替换文件中已有的文本。
我已尝试将Rewrite
命令更改为Write
。
procedure TForm1.BtnokClick(Sender: TObject);
var
myfile :textfile;
naam, van, adress : string;
begin
adress := edtadress.Text;
van:= edtvan.Text;
naam := edtnaam.Text;
AssignFile(myfile,'C:\test.txt');
write(myfile);
Writeln(myfile,naam);
writeln(myfile,van);
writeln(myfile,adress);
closefile(myfile);
end;
答案 0 :(得分:11)
调用Append
移至文件末尾:
AssignFile(myfile, filename);
Append(myfile);
Write(myfile, sometext);
....
请参阅文档。特别是此代码示例:http://docwiki.embarcadero.com/CodeExamples/en/SystemAppend_(Delphi)
答案 1 :(得分:10)
Uses IOUtils;
...
TFile.AppendAllText(filename, sometext);
除非您正在使用真正古老的Delphi版本。 http://docwiki.embarcadero.com/VCL/XE/en/IOUtils.TFile.AppendAllText
它还允许您将编码指定为参数