- •Основы c#. Урок 1. Что такое c#?
- •Основы c#. Урок 2. Что такое net Runtime?
- •Основы c#. Урок 3. Первая программа на c#
- •Основы c#. Урок 4. Переменные языка c#
- •Основы c#. Урок 5. Логические операторы
- •Основы c#. Урок 6. Массивы в c#
- •Основы c#. Урок 7. Операторы if и switch
- •Основы c#. Урок 8. Циклы for и foreach
- •Основы c#. Урок 9. Цикл while
- •Основы c#. Урок 10. Классы в c#
- •Основы c#. Урок 11. Конструкторы классов
- •Основы c#. Урок 12. Наследование
- •Основы c#. Урок 13. Запись в экземпляр базового класса экземпляра производного
- •Основы c#. Урок 14. Вложенные классы
- •Основы c#. Урок 15. Перегрузка бинарных операторов
- •Основы c#. Урок 16. Перегрузка унарных операторов
- •Основы c#. Урок 17. Область видимости
- •Основы c#. Урок 18. Виртуальные функции
- •Основы c#. Урок 19. Абстрактные классы
- •Основы c#. Урок 20. Запрещение наследования или модификатор sealed
- •Основы c#. Урок 21. Статические переменные
- •Основы c#. Урок 22. Статические методы класса
- •Основы c#. Урок 23. Статические конструкторы
- •Основы c#. Урок 24. Закрытые конструкторы или классы без экземпляров
- •Основы c#. Урок 25. Передача параметров переменой длины
- •Основы c#. Урок 26. Строки (класс System.String)
- •Основы c#. Урок 27. Строки (класс StringBuilder)
- •Основы c#. Урок 28. Передача параметров по ссылке и по значению (ref и out)
- •Основы c#. Урок 29. Пример передачи по ссылке
- •Основы c#. Урок 30. Перегрузка
- •Основы c#. Урок 31. Функции класса System.Array
- •Основы c#. Урок 33. События
- •Основы c#. Урок 35. Введение в атрибуты
- •Основы c#. Урок 36. Пример пользовательского атрибута.
- •Основы c#. Урок 37. Параметры командной строки
- •Основы c#. Урок 38. Метод Main в отдельном классе
- •Основы c#. Урок 39. Форматированный вывод
- •Основы c#. Урок 40. Класс System.Object
- •Основы c#. Урок 41. Методы класса System.Object
- •Основы c#. Урок 42. Переопределяем методы класса System.Object
- •Основы c#. Урок 43. Константы
- •Основы c#. Урок 44. Модификаторы доступа
- •Основы c#. Урок 45. Ссылка на текущий экземпляр класса (this)
- •Основы c#. Урок 47. Работаем со специальными папками
- •Основы c#. Урок 48. Получаем список всех дисков
- •Основы c#. Урок 49. Ввод/вывод в c# (System.Io)
- •Основы c#. Урок 50. Классы для работы с папками и файлами
- •Основы c#. Урок 51. Класс Directory
- •Основы c# Урок 52. Класс File
- •Основы c# Урок 53. Класс FileSystemInfo
- •Основы c# Урок 54. Класс DirectoryInfo
- •Основы c# Урок 55. Перечисление FileAttributes
- •Основы c# Урок 56. Класс FileInfo
- •Основы c# Урок 57. Пример: получение имен всех подпапок
Основы 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 - какие изменения отслеживаются в файловой системе