鱼C论坛

 找回密码
 立即注册
查看: 2174|回复: 2

怎么搜索一个文件夹下所有的txt文件

[复制链接]
发表于 2014-2-22 00:16:17 | 显示全部楼层 |阅读模式
1鱼币
本帖最后由 罂粟 于 2014-2-22 21:49 编辑

我是新手,问题有点多:cry
一个文件夹下有许多文件类型,我只要对txt文件进行处理,但怎么搜索啊,我要所有它们的文件路径啊


最佳答案

查看完整内容

FindFile(文件夹路径+'\*.txt',0) 返回一个包含所有TXT文件路径的TStringList
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-2-22 00:16:18 | 显示全部楼层
  1. Function FindFile(const FileSpec: TFileName;attributes: integer): TStringList; Export;
  2. var
  3.     Spec: String; //文件名
  4.     list: TStringList;
  5.     //------------------查询下级目录的子过程
  6.     procedure RFindFile(const Folder: TFileName);
  7.     var
  8.        SearchRec: TSearchRec;
  9.     begin
  10.          if FindFirst(Folder + Spec, Attributes, SearchRec)=0 then
  11.          begin
  12.                try
  13.                    repeat
  14.                         if (SearchRec.Attr and faDirectory = 0) or (SearchRec.Name<>'.') and (SearchRec.Name<>'..') then
  15.                            list.Add(Folder + SearchRec.Name);
  16.                    until FindNext(SearchRec) <> 0;
  17.                except
  18.                         FindClose(SearchRec);
  19.                         raise;
  20.                end;
  21.                FindClose(SearchRec);
  22.          end;
  23.          if FindFirst(Folder + '*', Attributes Or faDirectory, SearchRec) = 0 then
  24.          begin
  25.               try
  26.                  repeat
  27.                        if ((SearchRec.Attr and faDirectory) <> 0) and
  28.                            (SearchRec.Name<>'.') and (SearchRec.Name<>'..') then
  29.                           RFindFile(Folder + SearchRec.Name + '\');
  30.                  until FindNext(SearchRec) <> 0;
  31.               except
  32.                  FindClose(SearchRec);
  33.                  raise;
  34.               end;
  35.               FindClose(SearchRec);
  36.          end;
  37.     end;
  38.     //------------------
  39. begin
  40.      List := TStringList.Create;//创建字符传列表
  41.      try
  42.         spec := ExtractFileName(filespec);//返回指定文件名
  43.         RFindFile(ExtractFilePath(filespec));//返回指定路径
  44.         Result := list;//函数返回值是List;
  45.      Except
  46.         List.Free;
  47.         raise;
  48.      end;
  49. end;
复制代码


FindFile(文件夹路径+'\*.txt',0)  返回一个包含所有TXT文件路径的TStringList
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-2-22 00:50:27 | 显示全部楼层
用搜索*.text 即可
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-26 15:39

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表