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

Основы c#. Урок 50. Классы для работы с папками и файлами

Для работы с файлами и папками в пространстве имен System.IO существуют следующие классы:

Directory- содержит ряд статических методов для выполнения различных операций с папками (создание, удаление, проверка существования, получение текущей папки и т. п.).

DirectoryInfo- аналогичен классу Directory, только его методы не статические - для использования этого класса надо создать его экземпляр (параметром для конструктора служит имя папки).

File- содержит ряд статических методов для выполнения различных операций с файлами (создание, удаление, копирование и т. п.).

FileInfo- аналогичен классу File, только его методы не статические - для использования этого класса надо создать его экземпляр (параметром для конструктора служит имя файла).

Классы Directory и File яляются непосредственными потомками класса Object, а классы DirectoryInfo и FileInfo - потомками абстрактного класса FileSystemInfo.

Основы c#. Урок 51. Класс Directory

Класс Directory предназначен для работы с папками. Этот класс содержит статические методы для работы с папками (в отличие от класса DirectoryInfo, который содержит аналогичные методы, применяемые для экзампляра класса).

Вот основные методы класса Directory (все они статические):

  • CreateDirectory - создает папку с указанным именем.

  • Exists - проверяет существование папки с указанным именем.

  • Delete - удаляет папку с указанным именем.

  • Move - перемещает или переименовывает папку с указанным именем.

А вот пример их употребления:

usingSystem;

//Подключаем необходимое пространство имен.

usingSystem.IO;

namespaceconstest

{

class Class1

{

...

static void Main(string[] args)

{

//Создаем папку.

Directory.CreateDirectory("C:\\temp");

//Проверка существования папки.

if(Directory.Exists("C:\\temp1"))

{

Console.WriteLine("Папка \"temp1\" существует");

}

else

{

Console.WriteLine("Папка \"temp1\" не существует");

}

if(Directory.Exists("C:\\temp"))

{

Console.WriteLine("Папка \"temp\" существует");

}

else

{

Console.WriteLine("Папка \"temp\" не существует");

}

//Перемещение папки.

Directory.Move( "C:\\temp", "C:\\temp2");

//Удаление папки.

Directory.Delete( "C:\\temp2");

}

}

}

Обратите внимание, что метод Move можно использовать не только для перемещения, но и для переименования папки (что мы, фактически, в нашем примере и делаем). Для этого папка, задаваемая первым параметром (т. е. та, которую перемещаем) должна находиться на том же уровне, что и папка, задаваемая вторым параметром (т. е. куда перемещаем).

Основы c# Урок 52. Класс File

Класс File предназначен для работа с файлами. Он содержит статические методы, котроые позволяют создавать, удалять, переименовывать и делать другие действия с файлами. Для этого класса существует парный класс FileInfo, содержащий аналогичные методы экземпляра класса.

Вот основные методы класса File (все они, разумеется, статические):

  • Create - создание файла.

  • Exists - проверка существования файла.

  • Delete - удалениие файла.

  • Move - переименование и перемещение файла.

  • Copy - копирование файла.

А вот пример, демонстрирующий применение этих методов:

usingSystem;

// Подключаем необходимое пространство имен.

usingSystem.IO;

namespacecontest

{

class Test

{

public static void Main()

{

// Создаем файл.

File.Create("C:\\0.txt");

// Проверка существования файла.

if(File.Exists("C:\\1.txt"))

{

// Удаление файла.

File.Delete("C:\\1.txt");

}

// Переименование файла a.txt в b.txt.

File.Move("C:\\a.txt", "C:\\b.txt");

// Перемещение файла.

File.Move("C:\\c.txt", "D:\\c.txt");

// Копирование файла.

File.Copy("D:\\z.txt", "D:\\x.txt");

}

}

}

Обратите внимание, что и для перемещения, и для переименования файла мы используем один и тот же статичесикй метод Move (так как по сути это одна и та же операция).