Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Programuv_good.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
990.21 Кб
Скачать

Процедури і функції роботи з файлами

Для роботи з файлами в модулі DOS визначенні наступні процедури і функції

Назва

Тип

Призначення

FExpand

FUNCTION

доповнення імені файлу до повного значення (поточний шлях, ім'я, розширення)

FSearch

FUNCTION

пошук файлу в списку каталогів

FindFirst

PROCEDURE

пошук першого файлу з заданим ім'ям і атрибутами

FindNext

PROCEDURE

пошук наступного файлу з заданим ім'ям і атрибутами

FSplit

PROCEDURE

розбиття повного імені файлу на складові частини (шлях, ім'я, розширення)

GetFAttr

PROCEDURE

отримання атрибутів файлу

SetFAttr

PROCEDURE

задання атрибутів файлу

Робота з файлами Турбо Паскаль призводить до необхідності використання термінології і засобів MS-DOS. Іноді виникає необхідність пошуку файлів з однаковим ім'ям, пошуку по шаблону, виділення потрібного файлу із знайденої групи файлів. Процедури FSplit, FExpand, FSearch, FindFirst, FindNext спрощують розв’язання цих задач.

Припустимо, необхідно визначити імена всіх файлів з розширенням .PAS, які знаходяться в визначеному каталозі. Для цього використовують наступні процедури:

FindFirst (Path: STRING; Attr: WORD; VAR S: SearchRec);

FindNext (VAR S: SearchRec);

де Path – шлях і ім'я для пошуку; Attr – задані атрибути файлу; S – змінна типу SearchRec.

Процедура FindFirst шукає перший файл з заданим ім'ям і набором атрибутів у вказаному каталозі. Процедура FindNext шукає наступний файл з атрибутами, заданими при виклику FindFirst, якщо ім'я було задане шаблоном. Обидві ці процедури використовують змінну типу SearchRec для перегляду каталогу. Інформація про кожний файл, знайдена FindFirst чи FindNext, повертається в змінну цього типу. Тип SearchRec описаний в модулі Dos.

Якщо виникає необхідність пошуку в різних каталогах, то використовується FSearch. Функція має формат:

FSearch (Path: PathStr; DirList: STRING): PathStr;

де Path – шлях і ім'я файлу, який необхідно знайти. Тип PathStr описаний в модулі Dos, як рядковий тип. DirList – це список каталогів, в яких буде проводитися пошук. Каталоги в списку повинні бути розділені крапкою з комою аналогічно тому, як це робиться в команді MS-DOS PATH. Пошук завжди починається з поточного каталогу поточного диску. У випадку вдалого пошуку функція повертає рядок, в якому міститься повне ім'я файлу. У випадку невдачі повертається пустий рядок.

Для роботи з іменами файлів використовується також процедура FSplit і функція FExpand. Процедура FSplit дозволяє розбити повний шлях до файлу на три компоненти. Процедура описується наступним чином:

FSplit (Path: PathStr; VAR Dir: DirStr; VAR Name: NameStr; VAR Ext: ExtStr);

В параметрі Path вказується повний шлях до файлу. В змінній Dir повертається шлях без імені файлу.

В змінній Name повертається ім'я файлу без розширення. В змінній Ext буде поміщено розширення.

Функція FExpand виконує дії, протилежні процедурі FSplit. FExpand доповнює ім'я файлу до повного імені. Синтаксис функції наступний:

FExpand (Path: PathStr): PathStr;

Для зміни атрибутів файлу призначенні дві процедури – GetFAttr і SetFAttr. Процедура

GetFAttr (VAR F; VAR Attr: WORD);

повертає атрибути файлу, зв’язаного зі змінною F. Атрибути повертаються в змінну типу WORD. Процедура

SetFAttr (VAR F; Attr: WORD);

встановлює атрибути.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]