zoukankan      html  css  js  c++  java
  • delphi 文件查找

    FindFirst  是用来寻找目标目录下的第一个文件,
    FindFirst函数在delphi帮助下的定义: 
    function FindFirst(const Path: string; Attr: Integer; var F: TSearchRec): Integer; 
    其中有一句:FindFirst returns 0 if a file was successfully located 
    也就是说,当成功找到文件时,返回0.

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

    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 中提些条件, 譬如判断如果是文件夹就递归搜索等等
     


  • 相关阅读:
    欧拉定理 (证明+在求逆元上的应用)
    【转】弱校的ACM奋斗史
    SDUT 2412 (单调队列 + dp)
    做SRM感想。。。
    平面图中最小割向最短路的转化
    HDU 4533
    黑书上的DP 30题
    POJ【数论/组合/博弈论】题目列表
    HDU 4534 郑厂长系列故事——新闻净化
    SRM 571
  • 原文地址:https://www.cnblogs.com/zhangzhifeng/p/7568502.html
Copyright © 2011-2022 走看看