获取文件所在目录的最简单方法是什么?我用它来设置一个工作目录。
string filename = @"C:\MyDirectory\MyFile.bat";
在这个例子中,我应该得到“C:\MyDirectory”。
获取文件所在目录的最简单方法是什么?我用它来设置一个工作目录。
string filename = @"C:\MyDirectory\MyFile.bat";
在这个例子中,我应该得到“C:\MyDirectory”。
当前回答
您可以使用Path。GetDirectoryName,然后传入文件名。
MSDN链接
其他回答
Path.GetDirectoryName(filename);
在我的情况下,我需要找到一个完整路径(目录)的目录名,所以我简单地做:
var dirName = path.Split('\\').Last();
如果您正在使用FileInfo对象,那么有一种简单的方法可以通过DirectoryName属性提取目录完整路径的字符串表示。
FileInfo的描述。通过MSDN的DirectoryName属性:
获取表示目录的完整路径的字符串。
示例用法:
string filename = @"C:\MyDirectory\MyFile.bat";
FileInfo fileInfo = new FileInfo(filename);
string directoryFullPath = fileInfo.DirectoryName; // contains "C:\MyDirectory"
链接到MSDN文档。
如果您确实有一个绝对路径,请使用path . getdirectoryname (path)。
如果你可能只得到一个相对名称,使用新的FileInfo(path). directory . fullname。
注意,Path和FileInfo都在命名空间System.IO中。
首先,你必须使用系统。IO命名空间。然后;
string filename = @"C:\MyDirectory\MyFile.bat";
string newPath = Path.GetFullPath(fileName);
or
string newPath = Path.GetFullPath(openFileDialog1.FileName));