Справочник функций и процедур Delphi: FileSearch

  Навигация по первой букве:

A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z

  Навигация по категории:

Compiler directives, Directives, Keywords / Types, Variables, Constants / Functions, Procedures

FileSearch
Функция
Поиск файла в одной или более папках SysUtils unit
  function FileSearch ( const FileName, DirectoryList : string ) : string;

Delphi Sources

Описание
Функция FileSearch осуществляет поиск файла в одной или более папках. Необходимо указывать не только название папки, но и полный адрес этой папки.

Имя файла может быть как файловым именем, так и полным адресом файла.

Если файл будет найден, то возвращается полный адрес файла включая имя файла, в случае не нахождения искомого файла будет возвращена пустая строка.

ПРЕДУПРЕЖДЕНИЕ: ВСЕГДА сначала поиск будет проходить в текущей папке (смотри GetCurrentDir), независимо от перечисленных директорий. Если файл обнаруживается там, то путь файла возращён не будет, а Только имя файла.
Примечания
Если любой из указанных каталогов не существует, никакая ошибка не будет выброшена.

Директивный список может быть пустой строкой - тогда будет обыскан только текущий каталог.
Похожие команды
FindClose  Закрывает успешный FindFirst поиск файла

FindFirst  Находит все файлы, соответствующие маске файла и атрибутов

FindNext  Находит следующий файл после успешного FindFirst

TSearchRec  Запись, используемая для хранения данных в FindFirst и FindNext

 
Пример кода : Поиск в текущем каталоге и вне
var
  myFile       : TextFile;
  fileName     : string;
  fullFilePath : string;
  dir1, dir2   : string;

begin
  // Файл который мы будет искать
  fileName := 'Test.txt';

  // Запись текстового файла в текущий каталог
  AssignFile(myFile, fileName);
  ReWrite(myFile);
  Write(myFile, 'Hello World');
  CloseFile(myFile);

  // Запись текстового файла в другой каталог
  AssignFile(myFile, 'C:\Program Files\'+fileName);
  ReWrite(myFile);
  Write(myFile, 'Hello World');
  CloseFile(myFile);

  // Определение двух каталогов, где мы хотим искать файл
  dir1 := 'C:\No such directory';
  dir2 := 'C:\Program Files';

  // Поиск файла
  fullFilePath := FileSearch(fileName, dir1+';'+dir2);

  // Если мы поищем сейчас, мы найдем его в текущем каталоге
  if fullFilePath = ''
  then ShowMessage(fileName+' не найден')
  else ShowMessage(fullFilePath+' найден');

  // Теперь удаляем Test.txt из текущего каталога и повторяем поиск
  DeleteFile(fileName);

  // Если мы поищем теперь, мы найдем его в одной из директорий поиска
  fullFilePath := FileSearch(fileName, dir1+';'+dir2);
  if fullFilePath = ''
  then ShowMessage(fileName+' не найден')
  else ShowMessage(fullFilePath+' найден');
end;

Test.txt найден
C:\Program Files\Test.txt найден
 


Последние добавленные на сайт исходники

Animation Loaders

DeLiKaTeS Tetris (Тетрис)

TDictionary Custom Sort

Fast Watermark Sources

3D Designer

Sik Screen Capture

 

Patch Maker

Айболит (remote control)

ListBox Drag & Drop

Доска для игры Реверси

Графические эффекты

Рисование по маске

 

Copyright © 2004-2026 "Delphi Sources" by «SiteAnalyzer» (источник – "DelphiBasics")

Группа ВКонтакте