function ListFiles(Dir: String):TStrings; var FSearchRec: TSearchRec; FileList: TStrings; FindResult: Integer; begin if Dir[length(Dir)]<>'/' then Dir:=Dir+'/'; FileList :=TStringList.Create; FindResult:=FindFirst(Dir+'*.*,faAnyFile+faDirectory,FSearchRec); while FindResult = 0 do begin if ((FSearchRec.Attr and faDirectory) = 0) then //文件 begin FileList.Add('文件:'+LowerCase(Dir+FSearchRec.Name)); end; if ((FSearchRec.Attr and faDirectory) <> 0) then begin if ((FSearchRec.Name<> '.') and (FSearchRec.Name <> '..')) then //文件夹 begin ListFiles(dir+FileRec.Name); end; end; FindResult:=FindNext(FSearchRec); end; FindClose(FSearchRec); ListFiles:=FileList; end;