【发布时间】:2019-01-09 06:52:52
【问题描述】:
我想获取一个列表中的所有目录,而不是驱动器上的系统和隐藏标记文件夹。
例子:
var Dizinler = Directory.EnumerateDirectories("C:\")
.Select(s => new DirectoryInfo(s))
.Where(s => !s.Attributes.HasFlag(FileAttributes.Directory | FileAttributes.System | FileAttributes.Hidden) )
.Select(s=> s.FullName).ToArray();
但是,返回的结果仍然包含隐藏文件夹和系统文件夹。
【问题讨论】:
-
!s.Attributes.HasFlag(FileAttributes.Directory | FileAttributes.System | FileAttributes.Hidden)表示“不是目录和系统以及隐藏属性结合”;因此,如果目录是隐藏的,但不是系统的,它会通过过滤器
标签: c# directoryinfo