将Visual Studio文件夹结构导出到Excel

3
有没有办法将Visual Studio“Solution Explorer”结构导出到Excel中?
我尝试使用“tree”命令并通过Windows命令提示符进行剪贴,像这样:Like this,但很难分割到每个Excel单元格。
我期望的结果是这样的:enter image description here 有什么好的方法吗?
谢谢。

我认为你应该用一些你已经尝试过的例子来澄清你的问题,并说明你期望的输出。请参考如何提问 - undefined
类似这样的内容?Directory.GetFiles(path, "*").Select(x => x.Split('\\')); - undefined
要包括子目录中的文件,输入"dir /b /s > dirlist.txt"来创建一个包含完整目录结构名称的文件列表,例如"C:\folder\subdirectory\file.csv"。 - undefined
@RomanMarusyk 谢谢。 - undefined
@lucky125111 抱歉,我添加了我期望的内容。 - undefined
@OleEHDufour 谢谢你的意见,但是它有很多垃圾文件,我只想看到像“资源管理器解决方案”那样的内容。 - undefined
1个回答

0

这里有一个解决方案。非常简单的递归解决方案,以您想要的格式列出文件。

public class GetFilesTreeList
{
    private static List<Files> files = new List<Files>();

    public static void Main(string[] args)
    {
        var path = @"C:\Users\Lukasz\Desktop";

        files.Add(new Files(Path.GetFileName(path), 0));
        WriteFilesRec(path, 1);

        foreach (var filese in files)
        {
            Console.WriteLine(filese);
        }

    }

    public class Files {
        public int column;
        public string name;

        public Files(string name, int column)
        {
            this.column = column;
            this.name = name;
        }

        public override string ToString()
        {
            return new String('+', column) + name; 
        }
    }

    public static void WriteFilesRec(string path, int i) {
        DirectoryInfo directory = new DirectoryInfo(path);
        foreach(var d in directory.GetDirectories()) {
            files.Add(new Files(d.Name, i));
            WriteFilesRec(Path.Combine(path, d.Name), i+1);
        }
        foreach(var f in directory.GetFiles()) {
            files.Add(new Files(f.Name, i));
        }
    }
}

太棒了,谢谢。 我稍后会在GitHub上自定义一些东西。 - undefined
你可以不使用files.Add(),而是像这样做:File.Append(new String(';') + d.Name),然后直接将其写入CSV文件中。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接