您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> Delphi >> 紧急求救,如何才能输入某一硬盘路径,得到,此路径中所有的文件名,包括下级文件夹中的,

紧急求救,如何才能输入某一硬盘路径,得到,此路径中所有的文件名,包括下级文件夹中的,

来源:网络整理     时间:2016/7/17 17:42:19     关键词:

关于网友提出的“ 紧急求救,如何才能输入某一硬盘路径,得到,此路径中所有的文件名,包括下级文件夹中的,”问题疑问,本网通过在网上对“ 紧急求救,如何才能输入某一硬盘路径,得到,此路径中所有的文件名,包括下级文件夹中的,”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: 紧急求救,如何才能输入某一硬盘路径,得到,此路径中所有的文件名,包括下级文件夹中的,
描述:

如题,怎么做啊,大家帮帮俺阿,是路径下全部文件,包括其中文件夹里的,谢谢,大家,很急得啊,


解决方案1:

//------------------------------------------------------------------------------
//
//      在指定的目录中查找指定子目录下的所有文件
//      参数:
//            sDir      :       指定的目录
//            fDir      :       指定目录下的子目录
//            DirList   :       用于保存找到的目录
//            FileList  :       用于保存找到的文件
//
//------------------------------------------------------------------------------
procedure SearchFile(sDir, fDir: String; var DirList, FileList: TStringList);
var
  Found: Integer;
  SearchRec: TSearchRec;
begin
  Found := FindFirst(sDir + fDir + '\*.*', faAnyFile, SearchRec);       //查找所有文件
  While Found = 0 do
  begin
     if SearchRec.Attr = faDirectory then       //如果找到的是目录
     begin
        if (SearchRec.Name = '.') or (SearchRec.Name = '..') then
        begin                                   //是 '.' 目录或 '..' 目录
           Found := FindNext(SearchRec);        //查找下一个
           Continue;                            //返回
        end;
        DirList.Add(fDir + '\' + SearchRec.Name);       //添加目录
        //继续查找下一级子目录
        SearchFile(sDir, fDir + '\' + SearchRec.Name, DirList, FileList);
        Found := FindNext(SearchRec);           //查找下一个
        Continue;
     end;
     FileList.Add(fDir + '\' + SearchRec.Name); //添加文件         
     Found := FindNext(SearchRec);
  end;
  FindClose(SearchRec);
end;

解决方案2:

procedure FindAllFile(sPath:String);
var
  sFile:String;
  sr: TSearchRec;
begin
  if RightStr(sPath,1)<>'\' then sPath:=sPath+'\';
  if FindFirst(sPath+'*.*',faAnyFile, sr) = 0 then
  begin
    repeat
      sFile:=Trim(sr.Name);
      if sFile='.' then Continue;
      if sFile='..' then Continue;
      sFile:=sPath+sr.Name;
      if (sr.Attr and faDirectory)<>0 then
        FindMp3(sFile)
      else if (sr.Attr and faAnyFile) = sr.Attr then
        ShowMessage(sFile);
    until FindNext(sr) <> 0;
    FindClose(sr);
  end;
end;


以上介绍了“ 紧急求救,如何才能输入某一硬盘路径,得到,此路径中所有的文件名,包括下级文件夹中的,”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2751123.html

相关图片

相关文章