1
我正在使用下面的代码写入一个现有的文件,但内容被追加。需要TFileStream选项来清空文件并覆盖它?如何在覆盖之前使用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;
我改变了'Create'模式'fmCreate',改变了寻求到'fsFromBeginning',一切似乎现在能够正常工作。是否使用'fmCreate'使查找变得多余? – vfclists
@vfclists是的。 'fmCreate'会重新创建没有数据的文件,所以没有必要定位流。 –