Важнейшие члены классов FileSystemInfo, FileInfo и DirectoryInfo
Важнейшие члены классов FileSystemInfo, FileInfo и DirectoryInfo
Класс FileSystemlnfo является базовым для классов Directorylnfo и Filelnfo и содержит большую часть их общей функциональности. Перед нами хороший пример тех возможностей, которые открываются при использовании абстрактных базовых классов. В классе Directory Info существует метод GetFileSystemlnfos, который возвращает массив объектов FileSystemlnfо, представляющих файлы и подкаталоги заданного каталога. Такое становится возможным только благодаря существованию класса FileSystemlnfo. Важнейшие члены базового класса FileSystemlnf о перечислены в табл. 9.4.
Таблица 9.4. Члены базового класса FileSystemInfo
Метод/свойство |
Описание | ||||
Attributes (свойство) |
Атрибуты объекта. Свойство доступно для чтения и записи | ||||
CreationTime (свойство) |
Время создания объекта. Свойство доступно для чтения и записи | ||||
Exists (свойство) |
Логический признак существования файла или каталога | ||||
Extension (свойство) |
Расширение файла | ||||
FullName (свойство) |
Полное имя каталога или файла | ||||
LastAccessTime (свойство) |
Дата/время последнего обращения к объекту. Свойство доступно для чтения и записи | ||||
LastWriteTime (свойство) |
Время последней записи в объект. Свойство доступно для чтения и записи | ||||
Name (свойство) |
Для файлов — имя файла. Для каталогов — имя последнего каталога в иерархии, если это возможно. В противном случае возвращается полное имя | ||||
Delete |
Удаляет объект | ||||
Refresh |
Обновляет состояние объекта | ||||
В табл. 9.5 и 9.6 перечислены важнейшие методы класса DirectoryInfo и методы класса Filelnfo, не имеющие непосредственного отношения к потокам (эта тема будет рассматриваться позже).
Таблица 9.5. Основные методы класса DirectoryInfo
Метод/свойство |
Описание | ||||
Exists (свойство) | Логический признак существования каталога | ||||
Name (свойство) | Имя каталога | ||||
Parent (свойство) | Объект DirectoryInfo для родительского каталога (для корневых каталогов возвращается Nothing) | ||||
Create | Создает каталог, путь к которому указан в конструкторе DirectoryInfo | ||||
CreateSubdirectory (ByVal As String) | Создает подкаталог, путь к которому передается в виде параметра. Возвращает объект Directorylnfo для созданного подкаталога | ||||
Delete | Удаляет пустой каталог, представленный объектом Directorylnfo. Если присвоить True необязательному логическому параметру, происходит рекурсивное удаление непустого каталога и всех его подкаталогов | ||||
GetDirectories | Возвращает массив объектов Directorylnfo для подкаталогов текущего каталога | ||||
GetFiles |
Возвращает массив объектов Filelnfo для файлов текущего каталога | ||||
GetFileSystemlnfos | Хороший пример использования абстрактных классов: метод возвращает массив объектов FileSystemlnfo, представляющих все файлы и подкаталоги текущего каталога | ||||
MoveTo(ByVal destDirName As String) | Перемещает Directorylnfo и все его содержимое | ||||
Root (свойство) | Объект DirectoryIlnfo для корневого каталога в иерархии текущего каталога | ||||
Таблица 9.6. Члены класса Filelnfo, не возвращающие потоков
Метод/свойство |
Описание |
||
Directory (свойство) | Объект Directorylnfo для каталога, в котором находится файл | ||
DirectoryName (свойство) | Полный путь к файлу в строковом виде | ||
Exists (свойство) | Логический признак существования файла | ||
Length (свойство) | Размер текущего файла | ||
CopyTo(ByVal destFileName As String) |
Копирует существующий файл и возвращает объект Filelnfo для копии. Необязательный логический параметр управляет перезаписью существующих файлов | ||
Create | Создает файл по имени, указанному при конструировании объекта Filelnfo, и возвращает объект FileSystem для нового файла | ||
Delete | Удаляет файл, представленный объектом FileInfo | ||
MoveTo(ByVal destFileName As String) | Перемещает файл | ||