如果我不知道路径中有多少个文件夹而且我不知道文件夹名称,如何从路径中提取每个文件夹名称?
答案 0 :(得分:5)
使用分隔符分割字符串:
var dirs[] = completePath.Split(Path.DirectorySeparatorChar);
迭代每个子文件夹并构造可能的子路径
var composition = string.Empty;
var directoryPathList = new List<string>();
foreach(var s in dirs) {
composition += Path.DirectorySeparatorChar + s;
directoryPathList.Add(composition);
}
答案 1 :(得分:5)
您可以使用String.Split
:
string fileName = @"C:\foo\bar\baz.txt";
string directory = Path.GetDirectoryName(fileName); // "C:\foo\bar"
string allDirectoryNames = directory.Split('\\'); // ["C:", "foo", "bar"]
答案 2 :(得分:2)
你的意思是这样的:
String path = @"\\MyNetwork\Test\my progs\MySource.cpp";
String[] names = Path.GetDirectoryName(path).Split(new Char[] {
Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar}, StringSplitOptions.RemoveEmptyEntries);
// names contains ["MyNetwork", "Test", "my progs"]