Класс Path предназначен для работы с файловыми путями (что, вобщем-то, совсем не удивительно). Этот класс обладает целым рядом полезных статических методов, которые мы сейчас и рассмотрим на конкретном примере.
// Получение используемого в операционной системе // разделителя для путей.char ch = Path.DirectorySeparatorChar;
Console.WriteLine(ch); // Выведется "\".// Получение всех запрещенных в имени пути символов. char[] chs = Path.InvalidPathChars;
foreach (char c in chs)
{
Console.Write(c + " ");
}
Console.WriteLine();
//////////// Работа с путями.//////////// Изменение расширения файла.string s = Path.ChangeExtension(@"c:\tmp.txt", "ini");
Console.WriteLine(s); // Выведется "c:\tmp.ini".// Получение имени файла.
s = Path.GetFileName(@"c:\tmp.txt");
Console.WriteLine(s); // Выведется "tmp.txt".// Получение расширения файла (вместе с точкой).
s = Path.GetExtension(@"c:\tmp.txt");
Console.WriteLine(s); // Выведется ".txt".// Получение имени файла без расширения.
s = Path.GetFileNameWithoutExtension(@"c:\tmp.txt");
Console.WriteLine(s); // Выведется "tmp".//Получение полного имени файла по относительному.
s = Directory.GetCurrentDirectory();
Console.WriteLine(s); // Выведется, например, "C:\Path\bin\debug".
s = Path.GetFullPath(@"..\..\tmp.txt");
Console.WriteLine(s); // Выведется "C:\Path\tmp.txt".// Получение имени временного файла (вместе с путем).
s = Path.GetTempFileName();
Console.WriteLine(s);
// Получение пути к папке для временных файлов.
s = Path.GetTempPath();
Console.WriteLine(s);
Обратите внимание, что класс Path при работе с путями не требует, чтобы такой путь действительно существовал. Например, в нашем римере не подразумевается, что файл c:\tmp.txt существует. Это, в частности, означает, что метод ChangeExtension в реальности не меняет разширение у файла - он просто создает строку с другим расширением, которую вы сами должны использовать для реального переименования (например, через статический метод Move класса File - см. урок
52).
PARKING.RU. Качественный ВИРТУАЛЬНЫЙ ХОСТИНГ на платформе Windows(r): поддержка NET, многофункциональная панель управления, аренда бизнес-приложений, сертифицированные специалисты. Управляемый ВЫДЕЛЕННЫЙ ХОСТИНГ на платформе Windows(r): производительные серверы, профессиональная поддержка, аренда ПО Microsoft(r), безопасность, гарантии. http://www.parking.ru