C# 判断一个文件是不是隐藏文件

C# 判断一个文件是不是隐藏文件,在获取文件时如何区分文件是否隐藏,有时我们并不想获取隐藏的文件,如何剔除?

我们可以据据FileInfo.Attributes来获取文件的属性,然后判断对比下看文件的属性是否包含Hidden属性,如果有那么这个文件就是隐藏文件。

==========代码开始==========

string path = @"C:\Users\Administrator\Desktop\";

string[] array = Directory.GetFiles(

path,

"*.*",

SearchOption.TopDirectoryOnly);

foreach (string fileName in array)

{

FileInfo fileInfo = new FileInfo(fileName);

FileAttributes attributes = fileInfo.Attributes & FileAttributes.Hidden;

if (attributes == FileAttributes.Hidden)

{

//TO DO

}

}

==========代码结束==========

//提供文件和目录的属性。

public enum FileAttributes

{

//此文件是只读的。

ReadOnly = 1,

//文件是隐藏的,因此没有包括在普通的目录列表中。

Hidden = 2,

//此文件是系统文件。 即,该文件是操作系统的一部分或者由操作系统以独占方式使用。

System = 4,

//此文件是一个目录。

Directory = 16,

//该文件是备份或移除的候选文件。

Archive = 32,

//留待将来使用。

Device = 64,

//该文件是没有特殊属性的标准文件。 仅当其单独使用时,此特性才有效。

Normal = 128,

//文件是临时文件。 临时文件包含当执行应用程序时需要的,但当应用程序完成后不需要的数据。 文件系统尝试将所有数据保存在内存中,而不是将数据刷新回大容量存储,以便可以快速访问。

//当临时文件不再需要时,应用程序应立即删除它。

Temporary = 256,

//此文件是稀疏文件。 稀疏文件一般是数据通常为零的大文件。

SparseFile = 512,

//文件包含一个重新分析点,它是一个与文件或目录关联的用户定义的数据块。

ReparsePoint = 1024,

//此文件是压缩文件。

Compressed = 2048,

//此文件处于脱机状态, 文件数据不能立即供使用。

Offline = 4096,

//将不会通过操作系统的内容索引服务来索引此文件。

NotContentIndexed = 8192,

//此文件或目录已加密。 对于文件来说,表示文件中的所有数据都是加密的。 对于目录来说,表示新创建的文件和目录在默认情况下是加密的。

Encrypted = 16384

}

批量修改文件名精灵 2024年最新版
批量修改文件名称、文件夹名称

免费使用 功能无限制

方便快捷,支持正则表达式、无需安装功能齐全、支持定制无广告、无插件,放心使用。

免费下载 百度网盘
本站中所有的计算器的计算结果仅供参考,本站对此结果的准确性不承担任何责任,实际数额以银行/保险公司/国家相关机构确认的结果为准。
在线客服QQ:543690914,备案号: 苏ICP备15037649号-33。东海县白塔埠镇佳诚电脑经营部版权所有。