|
Программирование >> Обработка исключительных ситуаций
Класс Directorylnfo содержит элементы, позволяющие выполнять необходимьн действия с каталогами файловой системы. Эти элементы перечислены в табл. 11.11 Таблица 11.11. Элементы класса DirectoryInfo Элемент Create, CreateSubDirectory Delete GetDirectories GetFiles MoveTo Parent Описание Создать каталог или подкаталог по указанному пути в файловой системе Удалить каталог со всем его содержимым Возвратить массив строк, представляющих все подкаталоги Получить файлы в текущем каталоге в виде массива объектов класса Filelnfo Переместить каталог и все его содержимое на новый адрес в файловой системе Возвратить родительский каталог В листинге 11.9 приведен пример, в котором создаются два каталога, выводит информация о них и предпринимается попытка удаления каталога. Листинг 11.9. Использование класса DirectoryInfo using System; using System.10; namespace ConsoleApplicationl { class Classl { static void DirlnfoC Directorylnfo di )
static void MainO Directorylnfo di 1 Directorylnfo di2 Создать каталоги dil.CreateO: new DirectoryInfo( @ c:\MyDir ); new DirectorylnfoC @ c:\MyDir\temp di2.Create(); Вывести информацию о каталогах Dirlnfo(dil): DirInfo(di2); Попытаться удалить каталог Console.WriteLineC Попка удалить {0}. , dil.Name ): dil.DeleteO; catch С Exception ) Console.WriteLineC Попка не удалась Результат работы программы: Directory Info Full Name: c:\MyDir Name: MyDir Parent: Creation: 30.04.2006 17:14:44 Attributes: Directory Root: c:\ Directory Info Full Name: c:\MyDir\temp Name: temp Parent: MyDir Creation: 30.04.2006 17:14:44 Attributes: Directory Root: c:\ Попка удалить MyDir. Попытка не удалась Каталог не пуст, поэтому попытка его удаления не удалась. Впрочем, если использовать перегруженный вариант метода Delete с одним параметром, задающим режим удаления, можно удалить и непустой каталог: dil.DeleteC true ); удаляет непустой каталог Обратите внимание на свойство Attributes. Некоторые его возможные значения, заданные в перечислении FileAttributes, приведены в табл. 11.12. Таблица 11,12. Некоторые значения перечисления FileAttributes Значение Описание Archive Используется приложениями при выполпепии резервного копирования, а в некоторых случаях - при удалении старых файлов Compressed Файл является сжатым Directory Объект файловой системы является каталогом Encrypted Файл является зашифрованным Hidden Файл является скрытым Normal Файл находится в обычном состоянии, и для него установлены любые другие атрибуты. Этот атрибут не может использоваться с другими атрибутами Offline Файл, расположенный на сервере, кэширован в хранилище на клиентском компьютере. Возможно, что данные этого файла уже устарели Readonly Файл доступен только для чтения System Файл является системным Листинг 11.10 демонстрирует использование класса Filelnfo для копирования всех файлов с расширением jpg из каталога d:\foto в каталог d:\temp. Метод Exists позволяет проверить, существует ли исходный каталог. Листинг 11.10. Копирование файлов using System; using System.10; namespace Consol eApplicationi class Classl static void MainO string DestName = @ d:\tempV; Directorylnfo dest = new DirectoryInfо( DestName ): dest.CreateO; создание целевого каталога Directorylnfo dir = new DlrectorylnfoC @ d:\foto ); if ( ! dir.Exists ) проверка существования каталога Console.WriteLineC Каталог + dir.Name + не существует ); return; FilelnfoD files = dir.GetFiles( *.jpg ); список файлов
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |