我尝试获取一个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;
如何在我的示例中制作此脚本?
答案 0 :(得分:6)
替换
List.Add(IncludeTrailingPathDelimiter(directory) + sr.Name)
带
List.Add(sr.Name)