Операційна система MS-DOS включає ряд функцій для маніпуляції директоріями. Спеціальні функції дозволяють створити або видалити директорій, переглянути його вміст, визначити і змінити поточний накопичувач або директорій. Особливістю роботи з директоріями MS-DOS є те, що видалення або створення директорію, зміна поточного директорію можливі тільки в межах поточного накопичувача. Це іноді вимагає виконання додаткових операцій по установці потрібного накопичувача як поточного. Докладно структура директорія MS-DOS розглянута в 2.3.
На відміну від звичайного регулярного файлу файл директорія не може бути створений виконанням функцій fopen, ореn() або creat, не може відкриватися як файл для читання або запису. У зв’язку з особливою побудовою кореневого директорія, (кореневий директорій диска завжди існує і не містить елементів “.” і “. .”) розглянуті тут і далі функції відносяться тільки до субдиректорій. Створення і знищення файлу директорія виконують функції mkdir і rmdir.
#include <dir h>
int mkdir( const char *path )
Створює директорій по маршруту, що задається ASCIIZ-рядком, на якій
вказує path. У випадку успіху повертається 0; у протилежному випадку
повертається -1 і в зовнішню змінну errno записується код помилки. Спроба
створення кореневого директорія є помилкою. Створений порожній директорій
містить два елементи: елемент з ім’ям файлу “.” (використовується для посилання
на поточних директорій); елемент з ім’ям файлу “. .” (використовується для
посилання на батьківський директорій).
#include <dir.h>
int rmdir( const char *path )
Видаляє директорій по маршруту, що задається ASCIIZ-рядком, на якій
вказує path. У випадку успіху повертається 0; у протилежному випадку він
повертає -1 і в зовнішню змінну errno записується код помилки Спроба видалення
кореневого або не порожнього директорія є помилкою.
![]() |
![]() |
![]() |