【问题标题】:DirectoryInfo.EnumerateDirectories only accessible Folders and those that aren't hiddenDirectoryInfo.EnumerateDirectories 仅可访问的文件夹和未隐藏的文件夹
【发布时间】:2020-07-16 08:53:23
【问题描述】:
var directory = DirectoryStructure.GetDirectoryContents(absolutePath);
var directorySubdirectories = new List<DirectoryInfo>(directory.EnumerateDirectories());

我希望 EnumerateDirectories 方法只返回可见文件夹。 就像 Windows 文件资源管理器一样。

例如这个文件夹我不想被退回:

我可以使用哪个 searchPattern 或 searchOption 以及如何实现这个目标?

【问题讨论】:

  • 您可以过滤 DirectoryInfo.Attributes 上的列表以删除具有 FileAttributes.Hidden 集的列表。

标签: c# directory filesystems


【解决方案1】:

枚举目录后可以过滤掉目录;

        ...
        var directorySubdirectories = new List<DirectoryInfo>(directory.EnumerateDirectories());
        var notHiddenAndNotSystemSubdirectories = directorySubdirectories.Where(d =>
          !d.Attributes.HasFlag(FileAttributes.Hidden)
          && !d.Attributes.HasFlag(FileAttributes.System)).ToList();

【讨论】:

    猜你喜欢
    • 2019-03-19
    • 2014-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-28
    • 2015-12-14
    • 1970-01-01
    相关资源
    最近更新 更多