Seek procedure
Set file position.
Declaration
procedure Seek(var f: File; Pos: Int64)Description
Seek sets the file-pointer for file
F to record Nr.
Count.
The first record in a file has
Count=0. F can be any file type, except
Text. If
F is an untyped file, with no record size specified in
Reset or
Rewrite, 128 is assumed.Errors
Depending on the state of the
{$I} switch, a runtime error can be
generated if there is an error. In the
{$I-} state, use
IOResult
to check for errors.
See also
Example: ex56
Program Example56;
{ Program to demonstrate the Seek function. }
Var
F : File;
I,j : longint;
begin
{ Create a file and fill it with data }
Assign (F,'test.tmp');
Rewrite(F); { Create file }
Close(f);
FileMode:=2;
ReSet (F,Sizeof(i)); { Opened read/write }
For I:=0 to 10 do
BlockWrite (F,I,1);
{ Go Back to the begining of the file }
Seek(F,0);
For I:=0 to 10 do
begin
BlockRead (F,J,1);
If J<>I then
Writeln ('Error: expected ' ,i,', got ',j);
end;
Close (f);
end.An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.
