----------------------------------------------------------------------------- Truncate 将目前档案指标位置之後的档案内容全部删除. ----------------------------------------------------------------------------- Unit System 函数原型 procedure Truncate(var F); 范例 var f: file of Integer; i,j: Integer; begin AssignFile(f,'TEST.INT'); Rewrite(f); for i := 1 to 6 do Write(f,i); Writeln('File before truncation:'); Reset(f); while not Eof(f) do begin Read(f,i); Writeln(i); end; Reset(f); for i := 1 to 3 do Read(f,j); { Read ahead 3 records } Truncate(f); { Cut file off here } Writeln; Writeln('File after truncation:'); Reset(f); while not Eof(f) do begin Read(f,i); Writeln(i); end; CloseFile(f); Erase(f); end;
一般的delete是会很慢,甚至导致日志满了而失败
-----------------------------------------------------------------------------
Truncate 将目前档案指标位置之後的档案内容全部删除.
-----------------------------------------------------------------------------
Unit System
函数原型 procedure Truncate(var F);
范例
var f: file of Integer;
i,j: Integer;
begin
AssignFile(f,'TEST.INT');
Rewrite(f);
for i := 1 to 6 do
Write(f,i);
Writeln('File before truncation:');
Reset(f);
while not Eof(f) do
begin
Read(f,i);
Writeln(i);
end;
Reset(f);
for i := 1 to 3 do
Read(f,j); { Read ahead 3 records }
Truncate(f); { Cut file off here } Writeln;
Writeln('File after truncation:');
Reset(f);
while not Eof(f) do
begin
Read(f,i);
Writeln(i);
end;
CloseFile(f);
Erase(f);
end;