FpOpendir
Open a directory for reading
Declaration
Source position: bunxh.inc line 71
function FpOpendir(dirname: pChar) : pDir;
function FpOpendir(const dirname: RawByteString) : pDir;
function FpOpendir(dirname: ShortString) : pDir;
Description
FpOpenDir opens the directory DirName, and returns a pdir pointer to a Dir record, which can be used to read the directory structure. If the directory cannot be opened, nil is returned.
Errors
Extended error information can be retrieved using fpGetErrno .
See also
Name | Description |
---|---|
FpCloseDir | Close directory file descriptor |
FpReadDir | Read entry from directory |
Example
Program Example35;
{ Program to demonstrate the
OpenDir,ReadDir, SeekDir and TellDir functions. }
Uses BaseUnix;
Var TheDir : PDir;
ADirent : PDirent;
Entry : Longint;
begin
TheDir:=fpOpenDir('./.');
Repeat
// Entry:=fpTellDir(TheDir);
ADirent:=fpReadDir (TheDir^);
If ADirent<>Nil then
With ADirent^ do
begin
Writeln ('Entry No : ',Entry);
Writeln ('Inode : ',d_fileno);
// Writeln ('Offset : ',d_off);
Writeln ('Reclen : ',d_reclen);
Writeln ('Name : ',pchar(@d_name[0]));
end;
Until ADirent=Nil;
Repeat
Write ('Entry No. you would like to see again (-1 to stop): ');
ReadLn (Entry);
If Entry<>-1 then
begin
// fpSeekDir (TheDir,Entry); // not implemented for various platforms
ADirent:=fpReadDir (TheDir^);
If ADirent<>Nil then
With ADirent^ do
begin
Writeln ('Entry No : ',Entry);
Writeln ('Inode : ',d_fileno);
// Writeln ('Offset : ',off);
Writeln ('Reclen : ',d_reclen);
Writeln ('Name : ',pchar(@d_name[0]));
end;
end;
Until Entry=-1;
fpCloseDir (TheDir^);
end.