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

# FStat

Retrieve information about a file

## Declaration

Source position: line 0

`function FStat(`
`Path: PathStr;`
`var Info: Stat`
`):Boolean; function FStat(`
`Fd: LongInt;`
`var Info: Stat`
`):Boolean; function FStat(`
`var F: Text;`
`var Info: Stat`
`):Boolean; function FStat(`
`var F: file;`
`var Info: Stat`
`):Boolean;`

## Description

FStat gets information about the file specified in one of the following:

Path
  a file on the filesystem.
Fd
  a valid file descriptor.
F
  an opened text file or untyped file.

and stores it in Info, which is of type stat. The function returns True if the call was succesfull, False if the call failed.

## Errors

LinuxError is used to report errors.

sys_enoent
  Path does not exist.

## See also

FSStat |  | Retrieve filesystem information.
LStat |  | Return information about symbolic link. Do not follow the link

## Example

    program example28;

    { Program to demonstrate the FStat function. }

    uses oldlinux;

    var f : text;
        i : byte;
        info : stat;

    begin
      { Make a file }
      assign (f,'test.fil');
      rewrite (f);
      for i:=1 to 10 do writeln (f,'Testline # ',i);
      close (f);
      { Do the call on made file. }
      if not fstat ('test.fil',info) then
         begin
         writeln('Fstat failed. Errno : ',linuxerror);
         halt (1);
         end;
      writeln;
      writeln ('Result of fstat on file ''test.fil''.');
      writeln ('Inode   : ',info.ino);
      writeln ('Mode    : ',info.mode);
      writeln ('nlink   : ',info.nlink);
      writeln ('uid     : ',info.uid);
      writeln ('gid     : ',info.gid);
      writeln ('rdev    : ',info.rdev);
      writeln ('Size    : ',info.size);
      writeln ('Blksize : ',info.blksze);
      writeln ('Blocks  : ',info.blocks);
      writeln ('atime   : ',info.atime);
      writeln ('mtime   : ',info.mtime);
      writeln ('ctime   : ',info.ctime);
      { Remove file }
      erase (f);
    end.

Documentation generated on: Feb 26 2014