1 Управление файловой системой
Теоретическая часть по управлению файловой системой
Средства Visual Studio для решения задач по управлению файловой системой
Visual Studio в среде .Net содержит множество пространств имён, в которых находятся классы.
Классы, необходимые для выполнения операций, связанных с файловой системой, почти все находятся в пространстве имён System.IO.
Все основные классы, необходимые для просмотра файловой системы и выполнения операций, подобных перемещению, копированию и удалению файлов, показаны ниже.
FileSystemInfo;
FileInfo и File;
FileNotFoundException;
DirectoryInfo и Directory;
DirectoryNotFoundException;
DriveInfo;
DirectorySecurity;
FileSystemAccessRule;
FileSystemWatcher;
FileSystemEventArgs;
AccessControl;
NTAccount;
PermissionSet.
Классы
FileSystemInfo. Этот класс является базовым классом, который позволяет представлять любой объект файловой системы.
FileInfo и File. Эти классы позволяют представлять файлы в файловой системе.
FileNotFoundException. Это исключение создается, когда попытка доступа к файлу, не существующему на диске, заканчивается неудачей.
FileSystemAccessRule. Представляет абстракцию элемента управления доступом, определяющую правило доступа для файла или каталога.
FileSystemEventArgs. Предоставляет данные для события каталога: изменен, создан, удален.
DirectoryInfo и Directory. Эти классы позволяют представлять папки в файловой системе.
DirectoryNotFoundException. Исключение, возникающее при невозможности найти часть файла или каталога.
DriveInfo. Этот класс имеет свойства и методы, которые позволяют получать информацию о выбранном диске.
Классы Directory и File содержат только статические методы, а их экземпляры никогда не создаются.
Классы DirectoryInfo и FileInfo реализуют практически те же общедоступные методы, что и Directory и File, а также некоторые общедоступные свойства и конструкторы, но поддерживают состояние, а их члены не являются статическими.
DirectorySecurity. Представляет возможности управления доступом и аудита безопасности для каталога. Определяет применяемую учетную запись пользователя, тип доступа, а также разрешен этот доступ или запрещен.
AccessControl. Представляет сочетание идентификатора пользователя, маски доступа и типа управления доступом ("разрешить" или "запретить"). Содержится информацию о том, как правило, наследуется дочерними объектами и как это наследование распространяется.
NTAccount. Представляет учетную запись пользователя или группы.
FileSystemWatcher. Ожидает уведомления файловой системы об изменениях и инициирует события при изменениях каталога или файла в каталоге.
PermissionSet. Представляет коллекцию, которая может содержать несколько различных типов разрешений.
Выполненные задачи по управлению файловой системой
Задание 1-2
Приложение для перемещения по файловой системе и вывода информации о файлах.
Интерфейс формы для работы системного администратор показан на рисунке 1.1.
Рисунок 1.1 – Форма для перемещения по файловой системе
Приложение может копировать, перемещать, удалять и отображать информацию о файле. Первым делом, вводим имя папки и нажимаем кнопку «Отобразить». В полях отображается файлы и папки. Затем выбираем любой файл из папки и отображаются детали выбранного файла. Для копирования и перемещения, в поле пишем путь, куда копируется файл, выделяем нужный файл и нажимаем кнопку «Копировать». То же самое делается с перемещением.
Листинг задания представлен в приложении 1.
Задание 3
Разработка приложения, выводящего информацию о дисках.
При нажатии на диск выводится в отдельном окне информация о диске.
Данная форма данного задания представлена в рисунке 1.2.
Рисунок 1.3 – Существующие диски и информация о диске C
Листинг задания представлен в приложении 1.
Задание 4
Разработка приложения, выводящего информацию о правах доступа.
В этом приложении, мы вводим полный путь к каталогу. После правильного ввода пути выводится информация о правах доступа. Если введён не правильный путь, то выводится: «Некорректный путь к каталогу!».
Консоль данного задания представлена на рисунке 1.4.
Рисунок 1.4 – Консоль для выведения доступа к каталогу D
Листинг задания представлен в приложении 1.
Задание 5
Разработка Windows Form приложения, выводящего информацию о правах доступа.
Приложение работает следующим образом: в первом поле необходимо ввести диск, права доступа которого нам необходимо узнать, после чего нажимаем кнопку «Вывести». В новом окне автоматически выводится информация доступа пользователям или группам пользователей к тому или иному каталогу.
Интерфейс приложения представлен на рисунке 1.5
Рисунок 1.5 – Форма для вывода информации о правах доступа
Листинг задания представлен в приложении 1.
Задание 6
Консольное приложение, наблюдающее за состоянием папки.
Для начала нужно назначить папку, по которой будет выводиться информация.
Приложение работает следующим образом: Мы указываем путь к папке и в командной строке отображается вся информация об изменениях папки и файлов в ней.
Консоли данного задания представлены на рисунке 1.6
Рисунок
1.6 – Консоль приложения, наблюдающая
за состоянием папки
