查找srcPath目录下的包含有srcFileName文件的文件个数,并且包含子目录
解决方案 »
- Delphi 打印 只要打印出窗体上内容
- 简单调用动态链接库出错
- 如何判断一个SQL Server 表中的指定列是否为标识列, 即自增长列? (Delphi代码实现,不要SQL脚本)
- 怎样判断一个mdichild窗口是否获得了焦点?
- 求助:已知文本格式,怎样读其中任意一行的记录??
- 有没有不用安装Adobe Reader就能显示pdf文件的控件?
- 调查:你们都是怎么样将树形结构存储在数据表中的?
- 这几行代码请大家给个提示,谢谢
- 一个ACCESS数据表,加了密。有什么工具可以将它的密码解开?
- 程序中图片的显示问题?
- delphi7和xe7 HTTPEncode 中文解码问题
- UNIDAC VS FIREDAC
// GetFileCount :函数名
// srcPath :string值参数(要搜索的目录名)
// srcFileName :string值参数(搜索的文件名)
var
FileRec: TSearchrec; // 声明为TSearchrec类型局部变量,保存搜索结果的记录
currPath: string; // 声明为string类型局部变量,保存当前路径
begin
if srcPath[Length(srcPath)] <> '\' then srcPath := srcPath + '\';
// 条件语句,检查srcPath结尾字符不是\,加上一个\字符
currPath := srcPath + '*.*'; // 指定搜索的文件通配符,*.*表示所有文件
Result := 0; // 函数返回为0(初始值,后面不追加,就返回此值)
if FindFirst(currPath, faAnyFile, FileRec) = 0 then
// 查找从第一个文件开始 faAnyFile:指定任何文件
repeat // repeat循环,先执行,尾部判断是否循环
if ((FileRec.Attr and faDirectory) <> 0) and // 搜索的文件是目录
(FileRec.Name <> '.') and // 搜索的文件是(.代表当前目录)
(FileRec.Name <> '..') then // 搜索的文件上级目录(..代表当前目录)
begin
Result := Result + GetFileCount(srcPath + FileRec.Name, srcFileName);
// 确定是目录,就在进入子目录继续搜索(进入递归,调用自身)
end else
if AnsiCompareText(srcFileName, FileRec.Name) = 0 then
Result := Result + 1;
// 如果是文件,又是相同文件名,记录+1
until FindNext(FileRec) <> 0;
// repeat循环的尾部,判断还有文件继续循环,否则跳出循环
end;