Работа с типом DirectoryInfo
Работа с типом DirectoryInfo
Первым из рассматриваемых в нашем обсуждении типов, связанных с реализацией ввода-вывода и допускающих создание экземпляров, будет класс DirectoryInfo. Этот класс предлагает набор членов, используемых для создания, перемещения, удаления и перечисления каталогов и подкаталогов. Кроме функциональных возможностей, обеспеченных базовым классом (FileSystemInfo), класс DirectoryInfo предлагает и свои члены, описанные в табл. 16.3.
Таблица 16.3. Основные члены типа DirectoryInfo
Члены Описание Create() CreateSubdirectory() Создает каталог (или множество подкаталогов) в соответствии с заданным именем пути Delete() Удаляет каталог и все его содержимое GetDirectories() Возвращает массив строк, представляющих все подкаталоги текущего каталога GetFiles() Получает массив типов FileInfo, представляющих множество файлов данного каталога MoveTo() Перемещает каталог и его содержимое в место, соответствующее заданному новому пути Parent Получает каталог родителя указанного пути Root Получает корневую часть путиМы начнем работу с типом DirectoryInfo с попытки указать конкретный путь каталога для использования в качестве параметра конструктора. Чтобы получить доступ к текущему каталогу приложения (т.е. к каталогу приложения, выполняющегося в данный момент), используйте обозначение ".". Вот подходящие примеры.
// Привязка к текущему каталогу приложения.
DirectoryInfo dir1 = new DirectoryInfo(".");
// Привязка к C:Windows с помощью строки,
// для которой указано "дословное" применение.
DirectoryInfo dir2 = new DirectoryInfo(@"C:Windows");
Во втором примере предполагается, что передаваемый конструктору путь (путь C:Windows) уже существует на данной физической машине. Если вы попытаетесь взаимодействовать с несуществующим каталогом, будет сгенерировано исключение System.IO.DirectoryNotFoundException (каталог не найден). Поэтому если вы укажете каталог, который еще не создан, то перед его использованием вам придется сначала вызвать метод Create().
// Привязка к несуществующему каталогу с последующим его созданием.
DirectoryInfo dir3 = new DirectoryInfo(@"C:WindowTesting");
dir3.Create();
После создания объекта DirectoryInfo вы можете исследовать содержимое соответствующего каталога с помощью свойств, унаследованных от FileSystemInfo. Например, следующий класс создает новый объект DirectoryInfo, связанный с C:Windows (при необходимости измените этот путь в соответствии с установками системы на вашей машине) и отображающий ряд интересных статистических данных об указанном каталоге (рис. 16.2).
class Program {
static void Main(string[] args) {
Console.WriteLine("***** Забавы с Directory(Info) ***** ");
DirectoryInfo dir = new DirectoryInfo(@"C:Windows");
// Информация о каталоге.
Console.WriteLine("***** Информация о каталоге *****");
Console.WriteLine("Полное имя: {0} ", dir.FullName);
Console.WriteLine("Имя: {0} ", dir.Name);
Console.WriteLine("Родитель: {0} ", dir.Parent);
Console.WriteLine("Создан: {0} ", dir.CreationTime);
Console.WriteLine("Атрибуты: {0} ", dir.Attributes);
Console.WriteLine("Корневой каталог: {0}", dir.Root);
Console.WriteLine("******************************** ");
}
}

Рис. 16.2. Информация о каталоге Windows
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Обработка информации, представленной пользовательским типом данных
Обработка информации, представленной пользовательским типом данных После объявления переменной пользовательского типа ее можно "начинять" информацией. При этом необходимо присвоить значение каждому из элементов, составляющих тип.А для этого нужно идентифицировать
Работа с типом ArrayList
Работа с типом ArrayList Тип ArrayList непременно станет для вас наиболее часто используемым типом пространства имей System.Collections, поскольку он позволяет динамически переопределять размеры содержимого. Для иллюстрации базовых возможностей этого типа предлагаем вам рассмотреть
Работа с типом Queue
Работа с типом Queue Тип Queue (очередь) – это контейнер, гарантирующий размещение элементов по правилу "первым прибыл – первым обслужен". К сожалению, люди сталкиваются с очередями повсеместно: очереди в банке, кинотеатре, по утрам к автомату, продающему кофе, и т.д. При
Работа с типом Stack
Работа с типом Stack Тип System.Collections.Stack представляет коллекцию, в которой элементы размещаются по правилу "последним прибыл – первым обслужен". Как и следует ожидать, Stack определяет члены с именами Push() и Pop() (для добавления элементов в стек и удаления их из стека). В следующем
Перечисление файлов с помощью DirectoryInfo
Перечисление файлов с помощью DirectoryInfo Вдобавок к получению базовой информации о существующем каталоге, вы можете добавить в пример несколько вызовов методов типа DirectoryInfo. Сначала используем метод GetFiles(), чтобы получить информацию обо всех файлах *.bmp, размещенных каталоге
Создание подкаталогов с помощью DirectoryInfo
Создание подкаталогов с помощью DirectoryInfo Вы можете программно расширить структуру каталога, используя метод DirectoryInfo.CreateSubdirectory(). Этот метод с помощью одного обращения к функции позволяет создать как один подкаталог, так и множество вложенных подкаталогов. Для примера
Работа с типом Directory
Работа с типом Directory Теперь, когда вы увидели тип DirectoryInfo в действии, рассмотрим тип Directory. По большей части члены Directory "дублируют" функциональные возможности, обеспечиваемые членами уровня экземпляра DirectoryInfo. Напомним, однако, что члены Directory возвращают строковые типы, а
Работа с типом класса DriveInfo
Работа с типом класса DriveInfo В .NET 2.0 пространство имен System.IO предлагает класс с именем DriveInfo. Подобно Directory.GetLogicalDrives(), статический метод DriveInfo.GetDrives() позволяет выяснить имена дисков машины. Однако, в отличие от Directory.GetLogicalDrives(), класс DriveInfo обеспечивает множество
Работа с типом File
Работа с типом File Тип File предлагает функциональные возможности, почти идентичные возможностям типа FileInfo, но с помощью ряда статических членов. Подобно FileInfo, тип File предлагает методы AppendText(), Create(), CreateText(), Open(), OpenRead(), OpenWrite() и OpenText(). Во многих случаях типы File и FileStream
Работа с типом Timer
Работа с типом Timer Напомним, что средняя часть строки состояния должна отображать текущее время или текущую дату, в зависимости от предпочтений пользователя.Первым шагом на пути к достижению этой цели является добавление в форму члена-переменной Timer – компонента,
Практическая работа 19. Поиск в Интернете. Работа с папками Избранное и Журнал
Практическая работа 19. Поиск в Интернете. Работа с папками Избранное и Журнал Задание 1. Научиться выполнять поиск в Интернете, настраивать параметры поиска, работать с папками Избранное и Журнал.Последовательность выполнения1. Запустите Internet Explorer.2. Щелкните кнопкой мыши
Практическая работа 27. Работа с проигрывателем Windows Media
Практическая работа 27. Работа с проигрывателем Windows Media Задание 1. Изучить средства управления воспроизведением проигрывателя Windows Media.Последовательность выполнения1. Откройте для воспроизведения с помощью проигрывателя любой музыкальный файл, например из папки
Практическая работа 30. Редактирование документа. Работа с фрагментами.
Практическая работа 30. Редактирование документа. Работа с фрагментами. Задание. Отредактировать сохраненный документ.Последовательность выполнения1. Откройте ранее сохраненный документ Урок 1 любым способом.2. Выделите слово, предложение, строку, абзац, весь документ.
Практическая работа 53. Запуск Access. Работа с объектами базы данных
Практическая работа 53. Запуск Access. Работа с объектами базы данных Задание. Ознакомиться с окном программы Access. Запустить и рассмотреть учебную базу данных. ВНИМАНИЕ При выполнении задания помните, что все внесенные в базу данных изменения записываются немедленно и их