如何使用里面的文件返回我的文件夹列表?

Kiw*_*isi 2 .net c# system.io.fileinfo

我想知道如何使用里面的文件返回我的文件夹列表.

因为我不能返回两个列表...并且不能将两种类型都放在列表中.

    public List<DirectoryInfo> GetTopFolders()
    {
        List<DirectoryInfo> Folders = new List<DirectoryInfo>();
        List<FileInfo> Files = new List<FileInfo>();

        System.IO.DirectoryInfo di = new System.IO.DirectoryInfo("C://inetpub//wwwroot//Files//");
        di.GetDirectories();
        System.IO.FileInfo[] fiArr = di.GetFiles();

        foreach (DirectoryInfo t in di.GetDirectories())
        {
            Folders.Add(t);
            foreach (FileInfo f in di.GetFiles())
            {
                Files.Add(f);
            }
        }
        return Folders;
    }
Run Code Online (Sandbox Code Playgroud)

这是我实际使用的代码.

Sir*_*lot 5

好吧,FileInfo和DirectoryInfo都继承自FileSystemInfo.因此,您可以维护该类型的列表,并将整个批次返回:

public List<FileSystemInfo> GetTopFoldersAndFiles()
{
    List<FileSystemInfo> FilesAndFolders = new List<FileSystemInfo>();

    System.IO.DirectoryInfo di = new System.IO.DirectoryInfo("C://inetpub//wwwroot//Files//");
    di.GetDirectories();
    System.IO.FileInfo[] fiArr = di.GetFiles();

    foreach (DirectoryInfo t in di.GetDirectories())
    {
        FilesAndFolders.Add(t);
        foreach (FileInfo f in di.GetFiles())
        {
            FilesAndFolders.Add(f);
        }
    }
    return FilesAndFolders;
}
Run Code Online (Sandbox Code Playgroud)

当然,您可能需要在代码中进行一些条件处理,您可以根据每个项目的类型使用此对象.