我正在创建一个简单的文件遍历器来列出一些文件,并且需要从结果中省略隐藏文件。我目前正在做这样的事情:
private void Walk()
{
this.Files = [];
this.Directories = [];
DirIterator Entries = dirEntries(this.Directory, SpanMode.depth, this.FollowSymLinks);
foreach (DirEntry Entry; Entries)
{
version(Windows)
{
uint Attributes = Entry.attributes();
if (Attributes & FILE_ATTRIBUTE_HIDDEN)
{
continue;
}
}
version(linux)
{
// ?????
}
if (Entry.isFile())
{
this.Files ~= Entry.name;
this.NumberOfFiles++;
}
if (Entry.isDir())
{
this.Directories ~= Entry.name;
this.NumberOfDirectories++;
}
}
this.Walked = true;
}
windows 部分似乎工作正常,但我需要为 Linux 部分做些什么来确定文件是否隐藏?