Как получить только имя каталога из SaveFileDialog.FileName

StackOverflow https://stackoverflow.com/questions/16306

  •  08-06-2019
  •  | 
  •  

Вопрос

Каков был бы самый простой способ отделить имя каталога от имени файла при работе с 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);
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top