Extension | Расширение файла. Возвращается пустым для папок. |
FullName | Полное имя пути доступа файла или папки. |
LastAccessTime | Время последнего доступа к файлу или папке. |
LastWriteTime | Время последней модификации файла или папки. |
Name | Имя файла или папки. |
Root | (Только DirectoryInfo .) Корневая часть пути доступа. |
Length | (Только FileInfo .) Возвращает размер файла в байтах. |
Можно также выполнить действия на объекте файловой системы с помощью следующих методов:
Имя | Назначение |
---|---|
Create() | Создает папку или пустой файл с заданным именем. Для FileInfo он возвращает также объект потока, чтобы позволить записать в файл. |
Delete() | Удаляет файл или папку. Для папок существует вариант рекурсивного метода Delete . |
MoveTo() | Перемещает и/или переименовывает файл или папку. |
CopyTo() | (Только FileInfo .) Копирует файл. Отметим, что не существует метода копирования для папок. Если копируются все деревья каталогов, то необходимо индивидуально скопировать каждый файл и создать новые папки, соответствующие старым папкам. |
GetDirectories() | (Только DirectoryInfo .) Возвращает массив объектов DirectoryInfo , представляющих все папки, содержащиеся в этой папке. |
GetFiles() | (Только DirectoryInfo .) Возвращает массив объектов FileInfo , представляющих все папки, содержащиеся в этой папке. |
GetFileSystemObjects() | (Только DirectoryInfo .) Возвращает объекты FileInfo и DirectoryInfo , представляющие все объекты, содержащиеся в этой папке, как массив ссылок FileSystemInfo . |
Отметим, что приведенные выше таблицы показывают основные свойства и методы, и не являются исчерпывающими.
В приведенных выше таблицах не перечислены большинство свойств или методов, которые позволяют записывать или читать данные в файлах. Это в действительности делается с помощью потоковых объектов, которые будут рассмотрены позже. FileInfo
реализует также ряд методов (Open()
, OpenRead()
, OpenText()
, OpenWrite ()
, Create()
, CreateText()
, которые возвращают объекты потоков для этой цели).
Интересно то, что время создания, время последнего доступа, и время последней записи являются изменяемыми:
// Test является FileInfo или DirectoryInfo. Задать время создания
// как 1 Jan 2001, 7.30 am
Test.CreationTime = new DateTime(2001, 1, 1, 7, 30, 0);
Это может показаться странным, но на самом деле достаточно полезно. Например, если имеется программа, которая эффективно модифицирует файл, просто считывая его, затем удаляя его и создавая новый файл с новым содержимым, то будет желательно изменить дату создания, чтобы противопоставить первоначальной дате создания старого файла.
Класс Path
Класс Path
не является классом, экземпляры которого будут создаваться. Скорее он