Иллюстрированный самоучитель по Visual Basic .NET

Класс Directory

Большинство методов класса Directory идентифицирует каталоги при помощи возвращаемых строк. Поскольку все члены класса объявлены общими, при обращении к ним не обязательно указывать конкретный экземпляр. Пример:

System.IO.Directory.GetCurrentDirectory()

Эта команда возвращает строку с описанием текущего каталога. Метод GetDirectories(pathString) возвращает массив строк с описанием подкаталогов каталога, заданного параметром pathString. Описание интерпретируется либо как путь, заданный относительно каталога текущего приложения, либо как путь в схеме UNC (Universal Naming Convention).

Следующая программа выводит имя текущего каталога и имена всех его подкаталогов.

Imports System.IO Module Modulel
Sub Main()
Dim curDir.nextDir As String Try
curDir =Directory.GetCurrentDirectory ()
Console.WriteLine(curDir)
For Each nextDir In Directory.GetDirectories(curDir)
Console.WriteLine(nextDir) Next
Catch ioe As IOException
Console.WriteLine("eeeks – i/o problems!" & ioe.message)
Catch e As Exception
Console. Write(e.stacktrace) Finally
Console.ReadLine()
End Try
End Sub
End Module

Если ваши потребности не ограничиваются простым выводом имен каталогов, лучше воспользоваться классом DirectoryInfo. Более подробное описание этого класса приводится ниже.

Помимо передачи строки с описанием каталога методу GetDirectories можно передать шаблон с метасимволами, используемыми в DOS ["?" обозначает один символ, а "*" – несколько символов.]. Важнейшие методы класса Directory перечислены в табл. 9.2. Во всех случаях параметры передаются по значению (с ключевым словом ByVal).

Таблица 9.2. Важнейшие методы класса Directory.

Метод Описание
Create Directory (ByVal pathName As String) Создает каталог с заданным именем и возвращает объект Directory Info для созданного каталога. При необходимости также создаются все промежуточные каталоги
Delete(ByVal pathName As String) Удаляет пустой каталог. Чтобы удалить непустой каталог вместе со всеми каталогами и файлами, воспользуйтесь командой Delete (pathName As String, True)
Exists(ByVal pathName As String) Возвращает логический признак существования каталога
GetCreationTime (ByVal pathName As String) Возвращает объект даты, содержащий информацию о дате и времени создания каталога
GetCurrentDirectory Возвращает строку с описанием текущего каталога
GetDirectories (ByVaL pathName As String) Возвращает массив строк с описанием подкаталогов. При вызове может передаваться второй строковый параметр, содержащий шаблон
GetDi rectoryRoot (ByVal pathName As String) Возвращает строку с описанием корневой части заданного пути
GetFiles(ByVal pathName As String) Возвращает массив строк с описаниями файлов каталога. При вызове может передаваться второй строковый параметр, содержащий шаблон
GetLastAccessTime (ByVal pathName As String) Возвращает объект даты, содержащий информацию о времени последнего обращения к каталогу
GetLastWriteTime (ByVal pathName As String) Возвращает объект даты, содержащий информацию о времени последней записи в каталог
GetLogicalDrives Возвращает строковый массив с именами логических дисков в формате "диск:\" (например, С:\)
GetParent (ByVal pathName As String) Возвращает строку с описанием каталога, родительского по отношению к заданному
Move(ByVal sourceDirName As String,ByVal destDirName As String) Перемещает каталог со всем содержимым в пределах диска
SetCurrentDirectory (ByVal pathName As String) Задает текущий каталог
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.