Как получить только имя каталога из SaveFileDialog.FileName - PullRequest
6 голосов
/ 19 августа 2008

Какой самый простой способ отделить имя каталога от имени файла при работе с SaveFileDialog.FileName в C #?

Ответы [ 4 ]

12 голосов
/ 19 августа 2008

Использование:

System.IO.Path.GetDirectoryName(saveDialog.FileName)

(и соответствующий System.IO.Path.GetFileName). Класс Path действительно довольно полезен.

2 голосов
/ 19 августа 2008

Вы можете создать объект FileInfo. У него есть свойства Name, FullName и DirectoryName.

var file = new FileInfo(saveFileDialog.FileName);
Console.WriteLine("File is: " + file.Name);
Console.WriteLine("Directory is: " + file.DirectoryName);
1 голос
/ 19 августа 2008

Объект Path в System.IO довольно хорошо разбирает его.

0 голосов
/ 19 августа 2008

Поскольку косая черта в имени файла не разрешена, одним простым способом является разделение имени SaveFileDialog.File с помощью String.LastIndexOf; например:

string filename = dialog.Filename;
string path = filename.Substring(0, filename.LastIndexOf("\"));
string file = filename.Substring(filename.LastIndexOf("\") + 1);
...