如何用Delphi实现子目录级的文件查询
在应用实践中,我们经常使用文件查询功能。通过Win95中提供的搜索功能,我们可以很容易地找出磁盘上任意子目录中的文件,因为搜索功能可以遍历指定目录下所有子目录中的文件。从编程的角度,实现了子目录级别的文件查询。其实实现这个功能并不难,关键是要理解和掌握\ \ "的编程思想。我用Delphi实现了这个功能(任何子目录级别)。因为使用了“另另另“,程序思路清晰,代码量小。
实现方式:
1.获取当前目录下的所有下一级子目录。
2.将其保存在字符串列表(Tstrings)中。
其中使用了几个API函数。
FindFirst是在指定目录中查找第一个文件或目录。
FindNext通常与FindFirst一起使用来查找下一个文件或目录。
FindClose用于关闭查询。
(以上功能在Delphi在线帮助中有详细解释,在此不再赘述);
3.使用FileExists函数查找当前目录,
4.查找是否有符合条件的文档,
5.依次将每个子目录设为当前目录,
6.递归调用这个函数,
7.释放资源,
8.返回查询结果。
代码如下:
1.确定它是否是搜索记录中的子目录。
function is validir(search rec:TSearchRec):Boolean;
begin
if (SearchRec。Attr=16)和
(SearchRec。名称“.”)和
(SearchRec。名称'..')那么
结果:=真
否则
结果:=假;
end;
0条评论