16.4. Работа с каталогами и файлами
Традиционные средства языка Паскаль предоставляют минимальные возможности при работе с внешними файлами. Обычно, это открытие, закрытие, переименование и удаление файла (две последние функции отсутствуют в стандарте языка, но имеются в системной библиотеке Турбо Паскаля). А такие специальные действия, как поиск файлов и работа с их атрибутами, реализованы лишь на уровне функций операционной системы и доступны только с помощью средств ассемблера. Некоторые из таких средств включены в виде процедур и функций в модуль DOS Турбо Паскаля (табл. 16.3).
Таблица 16.3
Процедуры и функции
Назначение
Поиск файлов (анализ каталогов)
FindFirst(Path : String; Attr : Word; VAR SR : SearchRec)
Находит первое подходящее запросу Path имя с заданным атрибутом Attr
FindNext(VAR SR : SearchRec)
Вызывается после FindFirst для нахождения дальнейших подходящих имен
FSearch(Path : PathStr; DirList : String) : PathStr
Ищет файл с именем Path в списке каталогов DirList; возвращает полное имя файла
Анализ атрибутов файлов
GetFAttr(VAR f : File; VAR FA : Word)
Считывает атрибут FA файла на диске, связанного с f
SetFAttr(VAR f : File; FA : Word)
Устанавливает атрибут файлу на диске, связанному с f
- 357 -
Синтаксический анализ имени
Fsplit(Path : PathStr; VAR Dir : DirStr; VAR Name : NameStr; VAR Ext : ExtStr)
Разбивает полное имя файла Path на его составляющие (подстроки): путь Dir, имя Name и расширение Ext
Fexpand(Path : PathStr) : PathStr
Приписывает к имени файла Path текущий маршрут