delphi 文件搜索,遍历所有子目录
2016-06-13 17:19
666 查看
function ListFiles(path: string): TStringList;
var
SearchRec: TSearchRec;
found: integer;
begin
result := TStringList.Create;
found := FindFirst(path + '\' + '*.*', faAnyFile, SearchRec);
if not DirectoryExists(path) then
begin
Result.Clear;
exit;
end;
while found = 0 do
begin
if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') and (SearchRec.Attr <> faDirectory) then
begin
if ExtractFileExt(SearchRec.Name) = '.dfm' then
result.Add(path + '\' + SearchRec.Name);
end
else if (SearchRec.Attr = faDirectory) and (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then
begin
Result.AddStrings(ListFiles(path + '\' + SearchRec.Name));
end;
found := FindNext(SearchRec);
end;
FindClose(SearchRec);
end;
var
SearchRec: TSearchRec;
found: integer;
begin
result := TStringList.Create;
found := FindFirst(path + '\' + '*.*', faAnyFile, SearchRec);
if not DirectoryExists(path) then
begin
Result.Clear;
exit;
end;
while found = 0 do
begin
if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') and (SearchRec.Attr <> faDirectory) then
begin
if ExtractFileExt(SearchRec.Name) = '.dfm' then
result.Add(path + '\' + SearchRec.Name);
end
else if (SearchRec.Attr = faDirectory) and (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then
begin
Result.AddStrings(ListFiles(path + '\' + SearchRec.Name));
end;
found := FindNext(SearchRec);
end;
FindClose(SearchRec);
end;
相关文章推荐
- DbgridEh数据导出到Excel的方法(Delphi)--适用Ehlib7.0+D7
- delphi 浮点数float转换成十六进制字符串的方法(FloatToHex)
- delphi中exit,abort,break,continue 的区别
- delphi 浮点数转换成十六进制字符串的方法
- 计算器(delphi)
- 奖学金评分系统(系统分析与设计版与Delphi实现代码)
- 在Delphi中创建线程,请一定使用BeginThread()代替CreateThread()创建线程!
- Delphi中使用比较少的一些语法
- Delphi CRC算法, 不错
- Delphi Modbus RTU CRC16校验码
- 如何使用Delphi编写Modbus RTU CRC16的校验码
- Delphi CRC算法crcexecute
- Delphi CRC32Verify控件
- Delphi CRC16校验算法实现(转)
- delphi crc校验函数
- Delphi_检查exe文件是否是"随机基址"
- Delphi 字符指针分配内存
- delphi IDE RAD 丢失的快捷键 Ctrl+Shift+F
- delphi定时
- Delphi--Stream和Variant的转化