获取文件所在目录的最简单方法是什么?我用它来设置一个工作目录。

string filename = @"C:\MyDirectory\MyFile.bat";

在这个例子中,我应该得到“C:\MyDirectory”。


当前回答

如果您确实有一个绝对路径,请使用path . getdirectoryname (path)。

如果你可能只得到一个相对名称,使用新的FileInfo(path). directory . fullname。

注意,Path和FileInfo都在命名空间System.IO中。

其他回答

System.IO.Path.GetDirectoryName(filename)
Path.GetDirectoryName(filename);

如果您确实有一个绝对路径,请使用path . getdirectoryname (path)。

如果你可能只得到一个相对名称,使用新的FileInfo(path). directory . fullname。

注意,Path和FileInfo都在命名空间System.IO中。

你可以使用System.IO.Path.GetDirectoryName(fileName),或者使用FileInfo. directory将路径转换为FileInfo。

如果要对路径做其他事情,FileInfo类可能有优势。

您可以使用以下命令获取当前应用程序路径:

string AssemblyPath = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location).ToString();