Вы можете использовать Path.GetFullPath
для большинства случаев.
Но если вы хотите получить путь также, если имя файла относительно расположено, вы можете использовать следующий общий метод:
string GetPath(string filePath)
{
return Path.GetDirectoryName(Path.GetFullPath(filePath))
}
Например:
GetPath("C:\Temp\Filename.txt")
возврат "C:\Temp\"
GetPath("Filename.txt")
возврат current working directory
как "C:\Temp\"