[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] | Reference for unit 'System' (#rtl)

# Seek

Set file position

## Declaration

Source position: systemh.inc line 926

`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

Eof |  | Check for end of file
SeekEof |  | Set file position to end of file
SeekEoln |  | Set file position to end of line

## Example

    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.

Documentation generated on: Feb 26 2014