Наиболее часто используемыми вспомогательными классами при работе с ФС являются классы Path, File и Directory. Первый из них (Path) ориентирован на манипулирование строковыми представлениями путей к файлам и каталогам. Наиболее важные из его элементов описаны в табл. 4.
Таблица 4. Наиболее важные элементы класса Path
| Метод/Свойство | Описание |
| string Combine( string path1, string path2) | Комбинирует пути, добавляя второй к первому с учетом правильности расстановки разделителей. |
| string GetDirectoryName( string path) | Для указанного имени файла возвращает путь к нему. |
| string GetExtension( string path) | Возвращает только расширение файла вместе с ведущим символом «.». |
| string GetFileName( string path) | Возвращает имя файла вместе с расширением. |
| string GetTempPath() | Возвращает путь к временному каталогу. |
Вспомогательный класс File предоставляет удобный функционал по обработки файлов, их копированию, созданию, удалению, переименованию и т.д, а также ряд методов облегчающих атомарные операции записи/чтения всего содержимого файла. Основные методы класса File приведены в табл. 5.
Таблица 5. Наиболее важные элементы класса File
| Метод/Свойство | Описание |
| void Copy(…) | Производит копирование файла по указанному пути с возможным замещением. |
| FileStream Create(…) | Создает или замещает файл по указанному пути, возвращая файловый двоичный поток. |
| StreamWriter CreateText(...) | Создает или замещает файл, возвращая текстовый поток в кодировке UTF8 ориентированный на запись. |
| void Delete(string path) | Удаляет файл по указанному пути. |
| bool Exists(string path) | Проверяет наличие указанного файла на диске. |
| StreamReader OpenText( string path) | Открывает существующий файл, возвращая поток в кодировке UTF8 ориентированный на чтение. |
| byte[] ReadAllBytes( string path) | Считывает все содержимое существующего файла и возвращает его в виде двоичного массива байт. |
| string[] ReadAllLines( string path) | Возвращает все содержимое текстового файла в кодировке UTF8, считанное построчно. |
| string ReadAllText( string path) | Считывает все содержимое текстового файла в кодировке UTF8 и возвращает его в виде строки. |
| void WriteAllBytes( string path, byte[] bytes) | Сохраняет двоичный массив байт в файл, перезаписывая его если необходимо. |
| void WriteAllLines(string path,string[] contents) | Записывает текстовый файл, сохраняя в нем построчно переданный массив. |
| void WriteAllText(string path, string contents) | Сохраняет содержимое строки в файл, перезаписывая его если необходимо. |
Вспомогательный класс Directory включает основные функции для работы с каталогами ФС, такие как создание, удаление, переименование и получение списка элементов каталогов. Наиболее важные функции представлены в табл. 6.
Таблица 6. Наиболее важные элементы класса Directory
| Метод/Свойство | Описание |
| DirectoryInfo CreateDirectory(string path) | Создает все необходимые каталоги и подкаталоги, необходимые для существования указанного пути. |
| void Delete(string path) | Производит удаление указанного пустого каталога. |
| bool Exists(string path) | Проверяет наличие указанного каталога. |
| string GetCurrentDirectory() | Возвращает строковый абсолютный путь к каталогу, считающемуся для программы текущим. |
| string[] GetDirectories(string path) | Возвращает в виде массива пути к подкаталогам, найденным по указанному пути. |
| string[] GetFiles(string path) | Возвращает пути доступа к файлам, найденным по указанному пути. |
| string[] GetLogicalDrives() | Определяет список логических дисков, возвращая пути к их корневым каталогам (например, «D:\»). |






