获取文件的最高路径



我有一条像这样的路径

string path = @"C:foobartemptestfile.txt";

并希望获取文件的文件夹名称 - 在这种情况下,预期结果为"test".

有没有一种与path.SubString(path.LastIndexOf('/')等相比更优雅的构建方式。

你必须使用Path.GetDirectoryName (path);

string path = "C:/foo/bar/yourFile.txt";
string folderName = Path.GetFileName(Path.GetDirectoryName(path));

string path = "C:/foo/bar/yourFile.txt";
string folderName = new DirectoryInfo(path).Name;

string path = "C:/foo/bar/yourFile.txt";
string folderName = new FileInfo(path).Directory?.Name;

更多信息在这里: https://msdn.microsoft.com/en-us/library/system.io.path.getdirectoryname(v=vs.110(.aspx

您可以使用以下DirectoryInfo.Name获取文件的父目录的名称:

new FileInfo(@"C:foobartemptestfile.txt").Directory.Name

这将从示例中返回"test"。

使用静态Path类:

Path.GetFileName(Path.GetDirectoryName(path))

你应该使用Path.GetDirectoryName(),然后Path.GetFileName().

此示例返回您请求的内容:

var fileName = @"C:foobartemptestfile.txt";
var directoryPath = Path.GetDirectoryName(fileName);
var directoryName = Path.GetFileName(directoryPath); 
Console.WriteLine(directoryName);

结果:测试

相关内容

  • 没有找到相关文章

最新更新