TDosStream.Truncate procedure
Truncate the file on the current position.
Declaration
procedure Truncate; virtualDescription
If the status of the stream is
stOK, then
Truncate tries to
truncate the stream size to the current file position.
Errors
If an error occurs, the stream's status is set to
stError and
ErrorInfo is set to the OS error code.
See also
Example: ex16
Program ex16;
{ Program to demonstrate the TStream.Truncate method }
Uses Objects;
Var L : String;
P : PString;
S : PDosStream; { Only one with Truncate implemented. }
begin
L:='Some constant string';
{ Buffer size of 100 }
S:=New(PDosStream,Init('test.dat',stcreate));
Writeln ('Writing "',L,'" to stream with handle ',S^.Handle);
S^.WriteStr(@L);
S^.WriteStr(@L);
{ Close calls flush first }
S^.Close;
S^.Open (stOpen);
Writeln ('Size of stream is : ',S^.GetSize);
P:=S^.ReadStr;
L:=P^;
DisposeStr(P);
Writeln ('Read "',L,'" from stream with handle ',S^.Handle);
S^.Truncate;
Writeln ('Truncated stream. Size is : ',S^.GetSize);
S^.Close;
Dispose (S,Done);
end.An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.
