我使用下面的代码写入现有文件,但内容会被追加。清空文件并覆盖它需要什么TFileStream选项?
procedure TUtilitiesForm.btnSaveClick(Sender: TObject);
var fs: TFileStream;
begin
fs := TFileStream.Create(FileNameEdit1.Text, fmOpenWrite);
fs.Seek(0,fsFromEnd);
mmoDDL.Lines.SaveToStream(fs);
fs.Free;
end;
答案 0 :(得分:3)
另一方面,使用fsFromEnd
将数据追加到现有文件的末尾,fsFromBeginning
从头开始,但不会截断文件。
从fmOpenWrite
更改为fmCreate
procedure TUtilitiesForm.btnSaveClick(Sender: TObject);
var fs: TFileStream;
begin
fs := TFileStream.Create(FileNameEdit1.Text, fmCreate);
try
mmoDDL.Lines.SaveToStream(fs);
finally
FreeAndNil(fs);
end;
end;