如果我有:
C:\ TEMP \富\酒吧\
(注意: bar是一个目录)
我怎么解析出来:
酒吧
我想到了.
DirectoryInfo info = new DirectoryInfo(sourceDirectory_); string currentDirectoryName = info.Name;
尝试
System.IO.Path.GetFileName("C:\\temp\\foo\\bar");
只需使用:
string dirname = new DirectoryInfo(@"C:\temp\foo\bar\").Name;
根据MSDN,它返回目录的名称,而不是完整路径.
链接到MSDN Library
希望这可以帮助.........
看起来很多人已经撤回了他们的答案,这可能是一种耻辱.
这个是值得说明的,只是为了"教人钓鱼"的质量 - 它简短,优雅,由两个独立的东西组成,一旦学会,可以重新应用于其他问题.
string lastPiece = wholePath.Split('\\').Last();
Last
如果列表为空,将抛出.
在不创建新DirectoryInfo实例的情况下执行此操作的最简单方法是使用Path.GetFileName静态方法.它位于System.IO中.
using System.IO; string lastFolderName = Path.GetFileName(@"C:\Folder1\Folder2");
该变量将设置为"Folder2".
这比创建DirectoryInfo类的新实例要高效得多!