Лабораторная работа №8. Работа с файлами

Пространство имен

System.IO содержит все необходимые классы, методы и свойства для манипуляций с каталогами и файлами (В Таблице 8.1 приведены основные классы).

Табл.8.1

Класс Применение
Binary Reader и Writer Чтение и запись простых типов данных
Directory, File, DirectoryInfo и FileInfo Создание, удаление и перемещение файлов и директорий. Получение подробной информации о файлах, при помощи свойств, определенных в этих классах.
FileStream Доступ к файлам потоковым способом
MemoryStream Доступ к данным храняшимся в памяти
StreamWriter и StreamReader Чтение и запись текстовой информации
StringReader и StringWriter Чтение и запись текстовой информации из строкового буфера

Классы DirectoryInfo и FileInfo унаследованы от FileSystemInfo, который является абстрактным. Это значит, что Вы не можете унаследовать от него свой класс, но можете использовать свойства, определённые в нём. Таблица 8.2 перечисляет его свойства и методы.

Табл. 8.2

Свойства Назначение
Attributes Возвращает атрибуты файла в виде значений перечисления FileAttributes
CreationTime Возвращает время создания файла
Exists Проверяет является ли файл директорией или нет
Extension Возвращает расширение файла
LastAccessTime Возвращает время последнего доступа к файлу
FullName Возвращает полный путь к файлу
LastWriteTime Возвращает время последнего изменения файла
Name Возвращает имя данного файла
Delete() Удаляет файл. Будьте осторожны при использовании этого метода.

Класс DirectoryInfo содержит методы для создания, перемещение и удаление каталогов. Чтобы использовать вышеприведённые свойства, необходимо создать объект класса DirectoryInfo как показано в примере:

DirectoryInfo dir1 = new DirectoryInfo(@"F:\WINNT");

После этого уже можно просмотреть свойства директории при помощи объекта dir1, как показано на фрагмент кода:

Console.WriteLine("Full Name is: {0}", dir1.FullName);

Console.WriteLine("Attributes are: {0}",

dir1.Attributes.ToString());

Можно также использовать значения перечисления FileAttributes. Они приведены в таблице 8.3.

Табл.8.3

Свойства Назначение
Archive Возвращает Архивный статус файла
Compressed Позволяет узнать сжат файл или нет
Directory Показывает является ли файл директорией или нет
Encrypted Показывает закодирован файл или нет
Hidden Показывает скрыт файл или нет
Offline Показывает, что данные отсутствуют
ReadOnly Показывает является ли файл только для чтения
System Показывает, является ли файл системным (возможно файл в директории Windows)

Предположим, вы хотите получить список всех файлов с расширением BMP в папке F:\Pictures. Для этого можно использовать следующий код:

DirectoryInfo dir = new DirectoryInfo(@"F:\WINNT");

FileInfo[] bmpfiles = dir.GetFiles("*.bmp);

Console.WriteLine("Total number of bmp files", bmpfiles.Length);

Foreach(FileInfo f in bmpfiles)

{

Console.WriteLine("Name is: {0}", f.Name);

Console.WriteLine("Length of the file is: {0}", f.Length);

Console.WriteLine("Creation time is: {0}", f.CreationTime);

Console.WriteLine("Attributes of the file are: {0}",

f.Attributes.ToString());

}


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: