Системное программирование в UNIX средствами Free Pascal

Передаваемый вызову opendir параметр является


uses linux;
Function OpenDir(dirname:pchar):pdir;
Function OpenDir(dirname:string):pdir;
Передаваемый вызову opendir параметр является именем открываемого каталога. При успешном открытии каталога dirname вызов opendir возвращает указатель на переменную типа TDIR. Определение типа TDIR, представляющего дескриптор открытого каталога, находится в модуле linux. Это определение аналогично определению типа TFILE, используемого в стандартной библиотеке ввода/вывода, описанной в главах 2 и 11. Указатель позиции ввода/вывода в полученном от функции opendir дескрипторе установлен на первую запись каталога. Если вызов завершился неудачно, то функция возвращает nil. Всегда следует проверять возвращаемое значение, прежде чем это значение может быть использовано.
После того, как программа закончит работу с каталогом, она должна закрыть его. Это можно сделать при помощи функции closedir.


uses linux;
Function CloseDir(dirptr:pdir):integer;
Функция closedir закрывает дескриптор открытого каталога, на который указывает аргумент dirptr. Обычно его значение является результатом предшествующего вызова opendir, что демонстрирует следующий пример:
uses linux;
var
  dp:pdir;
begin
  dp := opendir ('/tmp/dir1');
  if dp = nil then
  begin
    writeln('Ошибка открытия каталога /tmp/dir1');
    halt(1);
  end;
  (*
     Код, работающий с каталогом
     .
     .
     .
  *)
  closedir (dp);
end.

Содержание раздела