Skip to content

FilePos

Get position in file

Declaration

Source position: systemh.inc line 1378

  function FilePos(var f: File) : Int64;

Description

Filepos returns the current record position of the file-pointer in file F. It cannot be invoked with a file of type Text. A compiler error will be generated if this is attempted. Untyped files have a default record size of 128, if the second parameter to Reset isn't specified.

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

Name Description
Filesize Size of file

Example

Program Example23;
{ Program to demonstrate the FilePos function. }
Var F : File of Longint;
    L,FP : longint;
begin
  { Fill a file with data :
    Each position contains the position ! }
  Assign (F,'test.tmp');
  Rewrite (F);
  For L:=0 to 100 do
    begin
    FP:=FilePos(F);
    Write (F,FP);
    end;
  Close (F);
  Reset (F);
  { If all goes well, nothing is displayed here. }
  While not (Eof(F)) do
    begin
    FP:=FilePos (F);
    Read (F,L);
    if L<>FP then
      Writeln ('Something wrong: Got ',l,' on pos ',FP);
    end;
  Close (F);
  Erase (f);
end.