TSearchRec類型


(1)TSearchRec是一個記錄類型,在delphi幫助文檔下可以看到其定義:
TSearchRec是一個文件信息的紀錄(Record)類型
在Windows下原型:
type
TSearchRec = record
Time: Integer;
Size: Integer;
Attr: Integer;
Name: TFileName;
ExcludeAttr: Integer;
FindHandle: THandle;
FindData: TWin32FindData;
end;
(2).FindFirst函數在delphi幫助下的定義:
function FindFirst(const Path: string; Attr:
Integer; var F: TSearchRec): Integer;
其中有一句:FindFirst returns 0 if a file was successfully
located
也就是說,當成功找到文件時,返回0.

(3).sr.Attr是查找的文件屬性(attribute
Files).faDiractory是目錄文件
整句的意思
如果查找的文件類型是目錄文件那么 ...
(4).當文件沒有查找完畢(還能查找到下一個文件)..

*****************************************************

 

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:\test\*.*
                         Attr: Integer ; //文件屬性
                       var  F: TSearchRec //一個結構(或叫記錄)
                   ): Integer ;    //返回值,成功返回0 ,失敗返回-1

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM