0

我正在制作一个脚本来查找路径中的第二个文件夹是什么,我该怎么做?

dirA
dirB/C ---- 我需要 dirB
indirB - dirD/E
indirE - 文件

我需要在文件路径的第二级中找到文件夹的名称(我用星号标记了它)。

我该如何找到这个

4

1 回答 1

2

这个扩展怎么样:

public static class StringExtensions
{
    public static String PathLevel(this String path, int level)
    {
        if (path == null) throw new ArgumentException("Path must not be null", "path");
        if (level < 0) throw new ArgumentException("Level must be >= 0", "level");

        var levels = path.Split(Path.DirectorySeparatorChar);
        return levels.Length > level ? levels[level] : null;
    }
}

测试:

var path = @"C:\Temp\Level2\Level3\Level4\File.txt";
var secondLevel = path.PathLevel(2); // => "Level2"

它将路径拆分DirectorySeparatorChar为 a String[]。您想要第二个级别(第三个元素),这将返回“Level2”。请注意,第一个元素是C:.

于 2012-04-27T14:16:59.123 回答