获取指定目录下的所有文件名(包括子目录)
来源:互联网 发布:数学计算软件 编辑:程序博客网 时间:2024/06/12 00:59
- procedure GetFileListE(MainPath:string;FileList:TStrings);
- var
- Result: Integer;
- SearchRec: TSearchRec;
- sMainpath: String;
- begin
- if MainPath[Length(MainPath)]='/' then sMainpath:=MainPath
- else sMainpath:=MainPath+'/';
- Result:=FindFirst(sMainPath+'*.*',faAnyFile,SearchRec);
- if SearchRec.Name<>'' then
- begin
- while (Result = 0 ) do
- begin
- if ((SearchRec.Attr and faDirectory ) <> 0 ) and
- ((SearchRec.Name<>'.') and (SearchRec.Name<>'..')) then
- begin
- FileList.Add('Directory:'+SearchRec.Name);
- GetFileListE(sMainPath+SearchRec.Name,FileList);
- end
- else
- begin
- if(SearchRec.Name<>'.')and (SearchRec.Name<>'..') then
- begin
- FileList.Add(SearchRec.Name);
- end;
- end;
- Result:=FindNext(SearchRec);
- end;
- end;
- FindClose(SearchRec);
- end;