Работа с файловой системой

Простейший уровень файлового доступа включает просто получение информации о существующих файлах и каталогах, а также выполнение типичных операций с файловой системой, — таких, как копирование файлов и создание каталогов. Эти задачи не включают открытие или запись файлов (обе эти задачи будут описаны далее в этой главе).

.NET Framework предоставляет несколько базовых классов для извлечения информации файловой системы. Они находятся в пространстве имен System.IO (и, кстати, могут быть использованы в настольных приложениях точно так же, как они применяются в Web-приложениях). Это классы следующие:

Эти два набора классов предоставляют похожие методы и свойства. Ключевое отличие между ними состоит в том, что для использования методов вам нужно создавать экземпляры объектов DirectoryInfo и FileInfo, в то время как статические методы классов Directory и File доступны всегда.

Обычно классы Directory и File более удобны для выполнения одноразовых задач. С другой стороны, если вам нужно получить несколько частей информации, то лучше создать объекты DirectoryInfo и FileInfo. При этом вам не придется повторять спецификации файла или каталога при каждом вызове метода. К тому же это быстрее. Дело в том, что классы DirectoryInfo и FileInfo выполняют проверку безопасности только однажды — при создании экземпляра объекта. Directory и File выполняют проверку безопасности при каждом вызове метода.

Классы Directory и File

Классы Directory и File предлагают множество удобных методов. Все они перечислены в таблицах 13.1 и 13.2. Обратите внимание, что каждый метод принимает один и тот же параметр — полностью квалифицированное путевое имя, идентифицирующее каталог или файл, с которым нужно выполнить операцию.

Таблица 13.1. Методы Directory

Метод Описание
CreateDirectory() Создает новый каталог. Если вы указываете каталог внутри другого несуществующего каталога, то ASP.NET старательно создаст все необходимые каталоги.

Delete() Удаляет соответствующий пустой каталог. Чтобы удалить каталог вместе со всем его содержимым (подкаталогами и файлами), добавьте второй необязательный параметр — true.

Exists() Возвращает true или false, указывая на существование или отсутствие каталога.

предыдущая    следующая страница    вначало главы    оглавление

572

Hosted by uCoz