Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C语言中的隐藏目录#_C#_Directory_Console Application - Fatal编程技术网

C# C语言中的隐藏目录#

C# C语言中的隐藏目录#,c#,directory,console-application,C#,Directory,Console Application,我在驱动器F中创建了一个隐藏目录,并将其命名为“File” 此代码显示它是隐藏文件:Console.WriteLine(dc.Attributes) 但当我使用DirectoryInfo属性检查它是否是隐藏文件时,它将无法工作 代码如下: DirectoryInfo dc = new DirectoryInfo(@"F:\File"); Console.WriteLine(dc.Attributes); if (dc.Attributes == FileAttri

我在驱动器F中创建了一个隐藏目录,并将其命名为“File”

此代码显示它是隐藏文件:
Console.WriteLine(dc.Attributes)

但当我使用DirectoryInfo属性检查它是否是隐藏文件时,它将无法工作

代码如下:

DirectoryInfo dc = new DirectoryInfo(@"F:\File");
        Console.WriteLine(dc.Attributes);
        if (dc.Attributes == FileAttributes.Hidden)
        {
            Console.WriteLine("HIDDEN");
        }
        else
        {
            Console.WriteLine("NOT HIDDEN");
        }
它写入
而不是隐藏的
。那我该怎么办


提前感谢

问题在于属性值是多个属性的按位组合

要测试是否设置了
FileAttributes.Hidden
属性,需要执行以下操作:

if ((dc.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden)

我建议您阅读。

问题在于属性值是多个属性的按位组合

要测试是否设置了
FileAttributes.Hidden
属性,需要执行以下操作:

if ((dc.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden)

我建议您阅读。

如果您使用的是.NET 4及以上版本,请执行以下操作:

dir.Attributes.HasFlag(FileAttributes.Hidden)

如果您使用的是.NET 4及以上版本,请执行以下操作:

dir.Attributes.HasFlag(FileAttributes.Hidden)
你试过这个吗?你试过这个吗?