Как получить только имя каталога из SaveFileDialog.FileName
Вопрос
Каков был бы самый простой способ отделить имя каталога от имени файла при работе с SaveFileDialog.FileName
на С#?
Решение
Использовать:
System.IO.Path.GetDirectoryName(saveDialog.FileName)
(и соответствующее System.IO.Path.GetFileName
).Класс Path действительно весьма полезен.
Другие советы
Вы можете создать объект FileInfo.Он имеет свойства Name, FullName и DirectoryName.
var file = new FileInfo(saveFileDialog.FileName);
Console.WriteLine("File is: " + file.Name);
Console.WriteLine("Directory is: " + file.DirectoryName);
Объект Path в System.IO
разбирает его довольно хорошо.
Поскольку косая черта в имени файла не допускается, одним из простых способов является разделение SaveFileDialog.Filename с помощью String.LastIndexOf;например:
string filename = dialog.Filename;
string path = filename.Substring(0, filename.LastIndexOf("\"));
string file = filename.Substring(filename.LastIndexOf("\") + 1);
Не связан с StackOverflow