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

Основы c#. Урок 47. Работаем со специальными папками

Класс Environment, рассмотреннуй на прошлом уроке, позволяет выяснять и местоположение различных специальных папок - SendTo, StartMenu, Program Files и др. Это может оказаться очень удобным для, например, добавлении ярлыка на вашу программу в папку Автозагрузки или на Рабочий Стол.

Специальные папки образуют перечисление Environment.SpecialFolder. Вот его некоторые члены:

Специальная папка

Описание

Cookies

Папка с cookie

DesktopDirectory

Рабочий стол

Favorites

Избранное

History

История (Internet Explorer)

Personal

Папка "Мои документы"

ProgramFiles

Папка "Program Files"

Recent

Папка со списоком последних открываемых документов

SendTo

Папка SendTo

StartMenu

Главное меню

Startup

Папка автозагрузки

System

Системная папка Windows

Обратите внимание, что некоторые из этих папок общие для всех пользователей, а некоторые персональны для каждого пользователя.

Вот пример работы со специальными папками:

//Получаем папку SendTo.

Environment.SpecialFolder p=Environment.SpecialFolder.SendTo;

//Получаем путь к папке SendTo.

string s=Environment.GetFolderPath(p);

Console.WriteLine("Папка SendTo: {0}.", s);

//Получаем папку Startup.

p=Environment.SpecialFolder.Startup;

//Получаем путь к папке Startup.

s=Environment.GetFolderPath(p);

Console.WriteLine("Папка Startup: {0}.", s);

Тут мы сначала записываем в переменную типа Environment.SpecialFolder нужную папку, затем извлекаем путь к нужной папке через метод GetFolderPath класса Environment.

Основы c#. Урок 48. Получаем список всех дисков

Класс Environment позволяет получить и имена всех логических дисков компьютера. Делается это через его статический метод GetLogicalDrives(). Вот пример:

string[] drives=Environment.GetLogicalDrives();

foreach(string s in drives)

{

//Выводим имена всех дисков.

Console.WriteLine(s);

}

А вот результат выполения программы:

Метод GetLogicalDrives() возвращает строковый массив с именами всех дисков.

Основы c#. Урок 49. Ввод/вывод в c# (System.Io)

Для операций ввода-вывода служит пространство имен System.IO.

Вот краткий обзор наиболее важных классов и перечислений из этого пространства имен:

  • BinaryReader - позволяет читать из файла данные различных типов (целые, вещественные, логические и т. п.)

  • BinaryWriter - позволяет записывать в файл данные различных типов (целые, вещественные, логические и т. п.)

  • Directory - класс со статическими методами для работы с папками

  • DirectoryInfo - класс для работы с некоторой папкой

  • File - класс со статическими методами для работы с файлом

  • FileInfo - класс для работы с некоторым файлом

  • Path - класс для работы с файловыми путями

  • Перечисление FileAttributes - атрибуты файла

  • Перечисление FileMode - возможные способы открытия файла

  • Перечисление FileAccess содержит константы, показывающие, открыт ли файл для чтения, записи и др.

  • FileSystemWatcher - класс для отслеживания изменений в файловой системе

  • Перечисление NotifyFilters - параметры, по которым происходит отслеживание изменений в файловой системе

  • Перечисление WatcherChangeTypes - какие изменения отслеживаются в файловой системе