FileGetAttr
Return attributes of a file.
Declaration
Source position: filutilh.inc line 185
function FileGetAttr(const FileName: UnicodeString) : LongInt;
function FileGetAttr(const FileName: RawByteString) : LongInt;
Description
FileGetAttr returns the attribute settings of file FileName. The attribute is a OR-ed combination of the following constants:
- faReadOnly
- The file is read-only.
- faHidden
- The file is hidden. (On UNIX, this means that the filename starts with a dot)
- faSysFile
- The file is a system file (On UNIX, this means that the file is a character, block or FIFO file).
- faVolumeId
- Volume Label. Only for DOS/Windows on a plain FAT (not VFAT or Fat32) file system.
- faDirectory
- File is a directory.
- faArchive
- file should be archived. Not possible on Unix
Errors
In case of error, -1 is returned.
See also
Name | Description |
---|---|
FileAge | Return the timestamp of a file. |
FileGetDate | Return the file time of an opened file. |
FileSetAttr | Set the attributes of a file. |
Example
Program Example40;
{ This program demonstrates the FileGetAttr function }
Uses sysutils;
Procedure Testit (Name : String);
Var F : Longint;
Begin
F:=FileGetAttr(Name);
If F<>-1 then
begin
Writeln ('Testing : ',Name);
If (F and faReadOnly)<>0 then
Writeln ('File is ReadOnly');
If (F and faHidden)<>0 then
Writeln ('File is hidden');
If (F and faSysFile)<>0 then
Writeln ('File is a system file');
If (F and faVolumeID)<>0 then
Writeln ('File is a disk label');
If (F and faArchive)<>0 then
Writeln ('File is artchive file');
If (F and faDirectory)<>0 then
Writeln ('File is a directory');
end
else
Writeln ('Error reading attributes of ',Name);
end;
begin
testit ('ex40.pp');
testit (ParamStr(0));
testit ('.');
testit ('/');
End.