Pergunta

O que seria o caminho mais fácil para separar o nome do diretório a partir do nome do arquivo ao lidar com SaveFileDialog.FileName em C#?

Foi útil?

Solução

Utilização:

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

(e o correspondente System.IO.Path.GetFileName).O Caminho de classe é realmente bastante útil.

Outras dicas

Você poderia construir um objeto FileInfo.Ele tem um Nome, FullName, e DirectoryName propriedade.

var file = new FileInfo(saveFileDialog.FileName);
Console.WriteLine("File is: " + file.Name);
Console.WriteLine("Directory is: " + file.DirectoryName);

O Caminho do objeto em System.IO analisa-lo muito bem.

Desde a barra não é permitido no nome de arquivo, uma forma simples é dividir o SaveFileDialog.Nome de ficheiro usando a corda.LastIndexOf;por exemplo:

string filename = dialog.Filename;
string path = filename.Substring(0, filename.LastIndexOf("\"));
string file = filename.Substring(filename.LastIndexOf("\") + 1);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top