怎样通过FINDFIRST等HAN数查找出某个指定文件夹里的所有目录名称 不是文件(100分)

  • 主题发起人 主题发起人 mxh78
  • 开始时间 开始时间
M

mxh78

Unregistered / Unconfirmed
GUEST, unregistred user!
高手在哪?[:(]
 
i:= FindFirst(pchar(adir + '*.*'),faAnyFile,sr);
while i=0 do
begin
if (SearchRec.Attr and faDirectory = faDirectory) then
begin
//处理目录的情况
if (SearchRec.Name <> '.') then //如果当前文件不是本级目录
begin
i:=FindNext(SearchRec);
continue;
end;
listbox1.Items.Add(SearchRec.Name);
i:=FindNext(SearchRec);
end;
 
procedure TForm1.Button1Click(Sender: TObject);
var
SR : TSearchRec;
lst_Str : TStringList;
begin
lst_Str := TStringList.Create;
try
if FindFirst('c:/temp/', faAnyFile, SR) = 0 then
begin
if (sr.Name <> '.') and (sr.Name <> '..') and (sr.Attr = faDirectory) then
lst_Str.Add(SR.Name);
while FindNext(sr) = 0 do
if (sr.Name <> '.') and (sr.Name <> '..') and (sr.Attr = faDirectory) then
lst_Str.Add(SR.Name);
FindClose(sr);
end;
ListBox1.Items.Text := lst_Str.Text;
finally
lst_Str.Free;
end;
end;
就是判断sr.Attr = faDirectory 这个
 
楼上够快!
 
后退
顶部