Робота з директоріями (папками) в Дельфи

У цій статті я постараюся познайомити Вас з деякими стандартними функціями для роботи з директоріями. І ще наведу кілька користувальницьких функцій і приклади їх використання. Також розглянуто питання виклику діалогу вибору директорії.

Для початку почнемо з простої функції для створення нової папки. Загальний вигляд функції такої:

Тобто якщо папка успішно створена функція повертає true. Відразу ж простий приклад її використання:

При натисканні на кнопку програма намагається створити папку з ім'ям TestDir на диску C: і якщо спроба увінчалася успіхом, то виводиться відповідне повідомлення. Слід зазначити, що якщо ви не вказуєте ім'я диска, на якому хочете створювати папку, то функція буде створювати папку в тій же директорії, де знаходиться сама програма.

приведуть до одного і того ж результату.

Відразу ж хочу попередити, що дана функція здатна видаляти тільки порожні папки, і якщо там що-небудь буде, то станеться помилка! Але вихід є. Тут нам на допомогу прийде призначена для користувача функція з простою назвою MyRemoveDir. Ось опис функції:

Копіюєте це все в Вашу програму, а потім цю функцію можна викликати наприклад так:

Тепер трохи відсторонився від безпосередньої роботи з папками і розглянемо яке хвилює багатьох питання. Як викликати діалог вибору папки (як при установці програм). ПРОСТО.

Підключаємо в uses модуль Filectrl.pas (тобто uses FileCtrl;). Тепер ставимо на форму ще кнопочку (щоб не плутатися :) і пишемо такий код:

При виборі директорії в заголовку форми відобразитися її назву!

Приклад її використання (як завжди я поставив на форму нову кнопку, а там написав)

Ну і наостанок наведу функцію для перевірки: чи існує директорія чи ні. Її загальний вигляд такий:

Якщо директорія зазначена в параметрі Name існує - то функція поверне true.

Сподіваюся, що допоміг Вам описом даних функцій і процедур. Відразу хочеться дати пораду: частіше заглядайте в HELP, там багато цікавої і корисної інформації!