Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
c#_Presentation_11.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
740.35 Кб
Скачать

11.4. Использование класса System.Io.Directory для работы с папками

(http://msdn.microsoft.com/ru-ru/library/system.io.directory.aspx)

Таблица 11.9. Основные методы класса Directory из пространства имен System.IO

Метод

Описание

CreateDirectory(sd);

Создает все каталоги и подкаталоги по заданному пути (sd).

Delete(sd);

Delete(sd,c);

Удаляет заданный каталог (sd): пустой или со всем содержимым (c = true).

EnumerateDirectories(sd);

EnumerateDirectories (sd,tp);

EnumerateDirectories (sd,tp,op);

Возвращает перечисляемую коллекцию имен каталогов, соответствующих шаблону поиска (tp) по указанному пути (sd). Возможно, поиск ведется также и в подкаталогах (op):

TopDirectoryOnly – поиск только в текущем каталоге (по умолчанию);

AllDirectories – поиск в текущем каталоге и во всех подкаталогах.

EnumerateFiles(sd);

EnumerateFiles(sd,tp);

EnumerateFiles(sd,tp,op);

Возвращает перечисляемую коллекцию имен файлов, соответствующих шаблону поиска (tp) по указанному пути (sd). Возможно, поиск ведется также и в подкаталогах (op):

TopDirectoryOnly – поиск только в текущем каталоге (по умолчанию);

AllDirectories – поиск в текущем каталоге и во всех подкаталогах.

EnumerateFileSystemEntries (sd);

EnumerateFileSystemEntries (sd,tp);

EnumerateFileSystemEntries (sd,tp,op);

Возвращает перечисляемую коллекцию имен файлов и каталогов, соответствующих шаблону поиска (tp) по указанному пути (sd). Возможно, поиск ведется также и в подкаталогах (op):

TopDirectoryOnly – поиск только в текущем каталоге (по умолчанию);

AllDirectories – поиск в текущем каталоге и во всех подкаталогах.

Exists(sd);

Определяет, существует ли заданный каталог (sd).

GetCreationTime(sd);

Получает дату и время создания каталога (sd).

GetCurrentDirectory();

Получает текущий рабочий каталог приложения.

GetDirectories(sd);

GetDirectories(sd,tp);

GetDirectories(sd,tp,op);

Получает коллекцию имен подкаталогов (включая их пути), соответствующих шаблону поиска (tp) в указанном каталоге (sd), а при необходимости и в подкаталогах (op):

TopDirectoryOnly – поиск только в текущем каталоге (по умолчанию);

AllDirectories – поиск в текущем каталоге и во всех подкаталогах.

GetDirectoryRoot(sd);

Возвращает для заданного пути сведения о томе и корневом каталоге по отдельности или сразу.

GetFiles(sd);

GetFiles(sd,tp);

GetFiles(sd,tp,op);

Возвращает коллекцию имен файлов (включая их пути), соответствующих шаблону поиска (tp) в указанном ка-талоге (sd), а при необходимости и в подкаталогах (op):

TopDirectoryOnly – поиск только в текущем каталоге (по умолчанию);

AllDirectories – поиск в текущем каталоге и во всех подкаталогах.

GetFileSystemEntries(sd);

GetFileSystemEntries

(sd,tp);

GetFileSystemEntries

(sd,tp,op);

Возвращает коллекцию имен файлов икаталогов (включая их пути), соответствующих шаблону поиска (tp) в указанном каталоге (sd), а при необходимости и в подкаталогах (op):

TopDirectoryOnly – поиск только в текущем каталоге (по умолчанию);

AllDirectories – поиск в текущем каталоге и во всех подкаталогах.

GetLastAccessTime(sd);

Возвращает время и дату последнего обращения к указанному файлу или каталогу (sd).

GetLastWriteTime(sd);

Возвращает время и дату последней операции записи в указанный файл или каталог (sd).

GetLogicalDrives();

Извлекает имена логических устройств данного компьютера в формате "<имя устройства>:\".

GetParent(sd);

Извлекает родительский каталог, на который указывает абсолютный или относительный путь (sd).

Move(sd1,sd2);

Перемещает файл или все содержимое каталога (sd1) в новое местоположение (sd2).

SetCreationTime(sd,dt);

Устанавливает дату и время (dt) создания заданного файла или каталога (sd).

SetCurrentDirectory(sd);

Устанавливает заданный каталог (sd) в качестве текущего рабочего каталога приложения.

SetLastAccessTime(sd,dt);

Устанавливает время и дату (dt) последнего обращения к заданному файлу или каталогу (sd).

SetLastWriteTime(sd,dt);

Устанавливает дату и время (dt) последней записи в файл или каталог (sd).

Пример 11.9. Использование методов Exists, CreateDirectory, GetDirectories, GetFiles, Move, Delete класса Directory для определения факта существования папок, создания, перемещения и удаления папок, а также вывода содержимого папки и подсчет папок и файлов в ней.

using System;

using System.IO;

class TestDir

{ static void Main(string[] args)

{ string currentDir = @"c:\temp";

string sourceDir = currentDir + @"\Source";

string destDir = currentDir + @"\Destination";

string moveDir = destDir + @"\Source";

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]