Уроки по Delphi



         

Урок22. Программный поиск файлов - часть 4


procedure TForm1.Button1Click(Sender: TObject);

Var SR:TSearchRec;

    FindRes:Integer;

begin

ListBox1.Clear;

FindRes:=FindFirst('c:\delphi\*.*',faAnyFile,SR);

While FindRes=0 do

   begin

      if ((SR.Attr and faDirectory)=faDirectory) and // если найденный элемент каталог и

      ((SR.Name='.')or(SR.Name='..')) then // он имеет название "." или "..", тогда:

         begin

            FindRes:=FindNext(SR); // продолжить поиск

            Continue; // продолжить цикл

         end;

      ListBox1.Items.Add(SR.Name);

      FindRes:=FindNext(SR);

   end;

FindClose(SR);

end;

В этом случае, при нахождении каталога с именем "." или с именем ".." программа продолжит обработку цикла поиска без вывода найденного имени элемента в компонент списка ListBox1.

Теперь рассмотрим тип TSearchRec. Он имеет в себе несколько полезных свойств:

Name - название найденного каталога (файла);

Size - размер файла в байтах;

Attr - атрибуты каталога (файла);

Time - упакованное значение времени и даты создания каталога (файла).

Все вышеперечисленные свойства мы уже рассмотрели или они понятны сразу, за исключением свойства Time. Оно имеет тип Integer и содержит в себе упакованное значение даты и времени создания файла. Распаковка производится с помощью функции FileDateToDateTime, которая в результате возвращает значение даты и времени.

Теперь добавим в нашу форму компонент DateTimePicher1 (страница Win32) и допишем несколько строк.

procedure TForm1.Button1Click(Sender: TObject);

Var SR:TSearchRec;

    FindRes:Integer;

begin

ListBox1.Clear;

FindRes:=FindFirst('c:\delphi\*.*',faAnyFile,SR);




Содержание  Назад  Вперед