用递归函数
C语言的遍历一个目录的原代码如下:
void __fastcall TForm1::lsdir(AnsiString cbl) //设置成您所要列举的文件夹 注意不要在末尾加斜杠
{
if(cbl.SubString(cbl.Length()-1,2)==".." || cbl.SubString(cbl.Length(),1)==".")return;
AnsiString cdir;//为了保存完整路径
TSearchRec sr;
if(FindFirst(cbl+"\\*.*",faDirectory,sr)==0)
  if(sr.Attr==faDirectory)
    {cdir=cbl+"\\"+sr.Name;
     tMemo->Text=tMemo->Text+cdir+"\r\n";
     lsdir(cdir);
    }
while(FindNext(sr)==0)
 {
   if(sr.Attr==faDirectory)
      {cdir=cbl+"\\"+sr.Name;
       tMemo->Text=tMemo->Text+cdir+"\r\n";
       lsdir(cdir);}
  }
FindClose(sr);
}