TSearchRec类型使用

Posted zhou0811

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TSearchRec类型使用相关的知识,希望对你有一定的参考价值。

FindFirst是用来寻找目标目录下的第一个文件,FindNext则是寻找下一个
TSearchRec是一个文件信息的纪录,当FindFirst返回SearchRec时,你可以通过SearchRec.Name获取文件名,以及SearchRec.Size获取文件大小等信息。

TSearchRec类型定义如下:
type
TSearchRec = record
Time : Integer;
Size : Integer;
Attr : Integer;
Name : TFileName;
ExcludeAttr : Integer;
FindHandle : THandle;
FindData : TWin32FindData;
end;

当利用FindFirst和FindNext函数找到一个文件后,利用这个类型可以获得文件的属性、大小和修改时间等信息。

var
SearchRec:TSearchRec; //搜索对象
ext,AppPath:string;
begin
listbox1.Clear; //清空列表框
AppPath:=edit1.text; //设置要搜索的目标目录
ext:=‘*.*‘; //设置要搜索的文件后缀名

FindFirst(AppPath+ext,faAnyFile,SearchRec); //-faDirectory
listbox1.Items.Add(SearchRec.Name); //添加文件名称
while FindNext(SearchRec)=0 do
listbox1.Items.Add(SearchRec.Name); //添加文件名

end;

 

 

//更多注释:
//TSearchRec 结构是内涵文件大小、名称、属性与时间等信息
//TSearchRec 中的属性是一个整数值, 可能的值有:
//faReadOnly 1 只读文件
//faHidden 2 隐藏文件
//faSysFile 4 系统文件
//faVolumeID 8 卷标文件
//faDirectory 16 目录文件
//faArchive 32 归档文件
//faSymLink 64 链接文件
//faAnyFile 63 任意文件
//s 的值也可以使用?通配符,好像只支持7个?, 如果没有条件就是*, 譬如: C:*
//实际使用中还应该在 repeat 中提些条件, 譬如判断如果是文件夹就递归搜索等等

function FindFirst(const Path: string; //包含路径和通配符的字符串,如f: est*.*
Attr: Integer; //文件属性
var F: TSearchRec //一个结构(或叫记录)
): Integer; //返回值,成功返回0 ,失败返回-1

以上是关于TSearchRec类型使用的主要内容,如果未能解决你的问题,请参考以下文章

在代码片段中包含类型转换

对这个带有 & 不带 = 的代码片段返回类型感到非常困惑

vs code 自定义代码片段

一个具有两种显示类型的片段[关闭]

(转) Java中的负数及基本类型的转型详解

Android 逆向Android 逆向通用工具开发 ( Android 平台运行的 cmd 程序类型 | Android 平台运行的 cmd 程序编译选项 | 编译 cmd 可执行程序 )(代码片段