如何使用C#创建目录树?

时间:2015-06-23 14:50:31

标签: c# dependencies

我打算尽力描述我想做的事情:) 所以我有一个文本文件,其中包含一些我将解析的组件信息。接下来,我想转到第一个文本文件中每个组件的位置,看看它们依赖于什么。基本上我想创建一个目录树。

Example:
FileA depends on
    comp1
    comp2
    comp3

解析后,我现在有3个FileA所依赖的组件。接下来,我想了解每个组件,看看谁依赖它们。最后我会得到类似的东西:

FileA
comp1
    FileB
    comp1a
    comp2a
        FileC
        comp1b
comp2
comp3

FileA依赖于comp1,comp2,comp3。第一个依赖关系comp1在FileB中依赖于comp1a& COMP2A。 comp2a依赖于FileC

中显示的comp1b

这是我到目前为止解析第一个文本文件

public class readTXT
{
    private string _path;

    public string Path
    {
        get { return _path; }
        set { _path = value; }
    }

    public void parseTXT(string path)
    {
        StreamReader reader = new StreamReader(path);
        int lineNumber = 0;
        int numberOfDependencies = 0;
        string line;
        List<string> depends = new List<string>();


        while ( (line = reader.ReadLine()) != null )
        {
            // look for dependencies
            string contains = "comp";
            string component;
            string[] components;

            if (line.Contains(contains.ToLower()))
            {
                numberOfDependencies++;
                components = line.Split('=',':');
                component = components[1];
            }

            lineNumber++;
        }

        reader.Close();

        foreach (string location in depends)
        {
            depends = new List<string>();
            parseTXT(location);
        }
    }
}

文件内容示例:

FileA.txt
comp=javalibaries
comp=graphics
comp=apache

javalibraries.txt (FileB.txt)
comp=json
comp=regex

json.txt (FileC.txt)
comp=javascriptstuff

0 个答案:

没有答案