从目录中获取子目录

时间:2014-03-22 21:47:09

标签: delphi subdirectory

我尝试获取一个directorie的子目录我有一个工作脚本,但我只想要子目录名称而不是之前的目录名称。

例:
如果我输入:“\ Program Files(x86)\ Embarcadero \ RAD Studio \ 12.0”
那么现在这是我的输出:
“\ Program Files(x86)\ Embarcadero \ RAD Studio \ 12.0 \ bin”
“\ Program Files(x86)\ Embarcadero \ RAD Studio \ 12.0 \ bin64”
“\ Program Files(x86)\ Embarcadero \ RAD Studio \ 12.0 \ binosx32”
...

但我希望我的输出是:
“bin” 的
“bin64适用”
“binosx32”
...

这是我现在使用的脚本:

procedure GetSubDirectories(const directory : string; list : TStrings) ;
 var
   sr : TSearchRec;
 begin
   try
     if FindFirst(IncludeTrailingPathDelimiter(directory) + '*.*', faDirectory, sr) < 0 then
       Exit
     else
     repeat
       if ((sr.Attr and faDirectory <> 0) AND (sr.Name <> '.') AND (sr.Name <> '..')) then
         List.Add(IncludeTrailingPathDelimiter(directory) + sr.Name) ;
     until FindNext(sr) <> 0;
   finally
     SysUtils.FindClose(sr) ;
   end;
 end;

如何在我的示例中制作此脚本?

1 个答案:

答案 0 :(得分:6)

替换

List.Add(IncludeTrailingPathDelimiter(directory) + sr.Name) 

List.Add(sr.Name)