如何从路径中提取每个文件夹的名称

本文关键字:文件夹 提取 路径 | 更新日期: 2023-09-27 18:22:16

如果我不知道路径中有多少文件夹,也不知道文件夹名称,我如何从路径中提取每个文件夹名称?

如何从路径中提取每个文件夹的名称

使用分隔符拆分字符串:

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);         
}

您只需使用String.Split:

string fileName = @"C:'foo'bar'baz.txt";
string directory = Path.GetDirectoryName(fileName); // "C:'foo'bar"
string allDirectoryNames = directory.Split(''''); // ["C:", "foo", "bar"]

你的意思是这样的吗:

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"]