Skip to content

GetDirs

Return a list of directory names from a path.

Declaration

Source position: finah.inc line 45

function GetDirs(var DirName: UnicodeString; 
                var Dirs: Array of PUnicodeChar = ^UnicodeChar)
                 : LongInt;
function GetDirs(var DirName: RawByteString; 
                var Dirs: Array of PAnsiChar = ^AnsiChar) : LongInt;

Description

GetDirs splits DirName in a null-byte separated list of directory names, Dirs is an array of PChars, pointing to these directory names. The function returns the number of directories found, or -1 if none were found. DirName must contain only OSDirSeparator as Directory separator chars.

Errors

None.

See also

Name Description
ExtractRelativePath Extract a relative path from a filename, given a base directory.

Example

Program Example45;

{ This program demonstrates the GetDirs function }
{$H+}

Uses sysutils;

Var Dirs : Array[0..127] of pchar;
    I,Count : longint;
    Dir,NewDir : String;

Begin
  Dir:=GetCurrentDir;
  Writeln ('Dir : ',Dir);
  NewDir:='';
  count:=GetDirs(Dir,Dirs);
  For I:=0 to Count-1 do
    begin
    NewDir:=NewDir+'/'+StrPas(Dirs[I]);
    Writeln (NewDir);
    end;
End.