看了万一老师的“遍历某个文件的文件及子文件“,经过层层优化,结合实际需要,在万一老师代码的基础上,增加了多文件查找的功能

//sysGetFileList(List,'c:\','*.doc,*.exe');  List通过查找添加多文件
//sysGetFileList(List,'c:\','*.doc');   List通过查找添加单文件
procedure sysGetFileList(List: TStrings; SourFile,FileName: string);
varS_Path: String;TmpList,S_FileList: TStringList;FileRec,SubFileRec: TSearchRec;I: Integer;
beginS_Path := IncludeTrailingPathDelimiter(Trim(SourFile));     //单元SysUtils中判断末尾是否包含文件夹路径符号'\',没有的则补全if not DirectoryExists(S_Path) thenbeginList.Clear;Exit;end;S_FileList := TStringList.Create;tryS_FileList.CommaText := FileName;TmpList := TStringList.Create;for I := 0 to S_FileList.Count - 1 dobeginif FindFirst(S_Path + S_FileList[I],faAnyFile,FileRec) = 0 thenrepeatif ((FileRec.Attr and faDirectory) <> 0) thenbeginif ((FileRec.Name <> '.') and (FileRec.Name <> '..')) thensysGetFileList(TmpList,IncludeTrailingPathDelimiter(S_Path + FileRec.Name),FileName);endelsebeginif ((FileRec.Attr and faDirectory) = 0) thenTmpList.Add(S_Path + FileRec.Name);end;until FindNext(FileRec) <> 0;end;FindClose(FileRec.FindHandle);if TmpList.CommaText <> '' then     //空文件夹不添加路径beginif List.CommaText <> '' thenList.CommaText := List.CommaText + List.Delimiter + TmpList.CommaTextelseList.CommaText := TmpList.CommaText;end;finallyFreeAndNil(TmpList);FreeAndNil(S_FileList);end;
end;

【跟随万一老师的足迹】查找目录下文件,在万一老师的基础上升级下,支持多文件查找 - 文件操作(一)相关推荐

  1. 二维数组中的查找--元素从左到右递增,从上到下递增

    在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 首先选取数组中右上角的数字.如果 ...

  2. win7 php 上传文件,在LNMP原来的基础上,win7环境下如何上传PHP文件到Linux环境下...

    首先,下载一个WINSCP客户端 连接主机后,上传文件到自己的保存目录 接着进入数据库添加我们的数据库 mysql -uroot -p  //这个是进入mysql的命令,但是要是你没有加  ln -s ...

  3. java ganymed ssh2_java ganymed-ssh2,session 执行多条指令,最好可以在前一条的基础上,执行下一条。...

    通过session.requestDumbPTY()和session.startShell()来模拟命令行,在通过io流操作 try { session = conn.openSession(); s ...

  4. linux查找日期目录,详解Linux查找目录下的按时间过滤的文件

    在维护项目中,有时会指定都一些条件进行过滤文件,并对该批文件进行操作:这时我们将使用shell命令进行操作:直接上代码 #!/bin/sh #BEGIN #`find ./ ! -name " ...

  5. linux依据时间过滤文件,详解Linux查找目录下的按时间过滤的文件

    在维护项目中,有时会指定都一些条件进行过滤文件,并对该批文件进行操作:这时我们将使用shell命令进行操作:直接上代码 #!/bin/sh #BEGIN #`find ./ ! -name " ...

  6. linux模糊查找目录文件,详解Linux查找目录下的按时间过滤的文件

    在维护项目中,有时会指定都一些条件进行过滤文件,并对该批文件进行操作:这时我们将使用shell命令进行操作:直接上代码 #!/bin/sh #BEGIN #`find ./ ! -name " ...

  7. linux按目录名查找目录_如何在Linux中查找目录?

    linux按目录名查找目录 Linux provides different ways to find directories. Here we will look at how to find di ...

  8. 【剑指Offer】个人学习笔记_32_从上到下打印二叉树 IIIIII

    目录 I 题目: [剑指 Offer 32 - I. 从上到下打印二叉树](https://leetcode-cn.com/problems/cong-shang-dao-xia-da-yin-er- ...

  9. linux查看文件总和以G为单位,linux系统下以存储从大到小并以K,M,G为单位的方式查看当前目录下的文件信息...

    前言 最近几乎大部分工作都在linux上进行的,发现在工作过程中经常要查看当前目录下的文件大小,但是每次都是用ls命令每次都是以字节形式显示的,看起来特别不爽.于是开始了再linux下如何看起来很爽文 ...

最新文章

  1. cnpm在ubuntu19.10下面的安装以及vue.js中el的意思
  2. Linux RPM包校验和数字证书
  3. Redis的RDB文件与AOF文件
  4. sql去除字符串中首尾空格
  5. python elseif用法_Python关键字简介
  6. Jquery获取列表中的值和input单选、多选框控制选中与取消
  7. java web jsp页面,jsp引入页面 Java Web JSP详解(下)
  8. 浅谈InnoDB存储引擎下锁的分类
  9. 五笔拼音反查精灵 v6.69 绿色版
  10. Moss 2007入门--功能概述
  11. 阿里云服务器1核1G1M能放多少个网站 跑多少流量
  12. 程序员的奋斗史(四十一)——大学断代史(五)——我的娱乐方式
  13. dilink虚拟服务器怎么设置,最简单的dlink路由器设置教程
  14. postgresql 遍历参数_《go语言从入门到入坟》json操作、文件操作
  15. 五、Web应用开发模式
  16. 杜克大学计算机数据科学,杜克大学计算机科学与信息系统Computer Science and Information Systems世界排名2020年最新排名第51-100位(QS世界排名)...
  17. 计算任意年份的2月有多少天
  18. 企业如何选择靠谱的加密软件?
  19. 富士施乐Fuji Xerox Phaser 6700 驱动
  20. 微服务调用异常:error feign.RetryableException: Read timed out executing POST http://xxx.......

热门文章

  1. HyperWorks针对焊点信息丢失的处理办法
  2. halcon颜色识别的两种简单方式
  3. Oracle数值函数,日期函数,转换函数,通用函数(七)
  4. 2020-12-18 Dataset之COCO数据集:COCO数据集的简介、下载
  5. ElasticSearch7.17权限控制和规划实战
  6. 如何查看电脑最大支持多少GB内存
  7. 全志平台SPI接口LCD屏驱动(GC9300,GC9306,ST7789,HX8357C)
  8. 经典电路(一)“桥式整流电路”
  9. 流式凋亡率计算_流式细胞术检测细胞凋亡问题
  10. win10备份为wim_泰哥一键备份还原下载-泰哥ghostv1.0.1.14 官方版