FileAttributes枚举
FileAttributes枚举是一个专门用于标记硬盘上的文件属性的枚举,枚举的说明在这里:http://www.cnblogs.com/kissdodog/archive/2013/01/16/2863515.html
源代码附在最下面。最源代码看来,我们可以得出的信息,这是一个标志枚举。此FileAttribute枚举通常由File的GetAttributes方法返回一个此枚举实例,要获取具体的成员值还需要通过位运算才能得到结果,在上面那篇枚举的文章中已经有说明。
例如要获取一个文本是否为只读的

FileAttributes f = File.GetAttributes(@"E:\file.txt");
if ((f & FileAttributes.ReadOnly) == FileAttributes.ReadOnly) //此处实现了判断文件是否只读,还叫什么,位运算,还得学为运算
{
Console.Write("此文件是只读的");
}
else
{
Console.Write("此文件不是只读的");
}

再比如要设置文件只读而且是隐藏的:
File.SetAttributes(@"E:\file.txt", FileAttributes.ReadOnly | FileAttributes.Hidden);
位运算对于标志枚举是非常有用的,一定要熟练掌握,一下给出该枚举的全部成员以及成员值。
其成员和值如下
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 该文件或目录是加密的。对于文件来说,表示文件中的所有数据都是加密的。对于目录来说,表示新创建的文件和目录在默认情况下是加密的。
最后附上源代码:

// 摘要:
// 提供文件和目录的属性。
[Serializable]
[Flags]
[ComVisible(true)]
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,

FileAttributes枚举的更多相关文章
- [CLR via C#]15. 枚举类型和位标志
一.枚举类型 枚举类型(enumerated types)定义了一组"符号名称/值"配对. 例如,以下Color类型定义了一组符号,每个符号都标识一种颜色: internal en ...
- 重温CLR(十一) 枚举类型、位标志和数组
枚举类型 枚举类型(enumerated types)定义了一组"符号名称/值"配对.例如,以下Color类型定义了一组符号,每个符号都标识一种颜色: internal enum ...
- C#遍历指定文件夹中的所有文件和子文件夹
参考:http://www.cnblogs.com/skylaugh/archive/2012/09/23/2698850.html DirectoryInfo TheFolder=new Direc ...
- C#遍历文件夹及文件
背景: 想自己实现一个网盘系统,于是需要用到遍历文件(夹)操作. C#基本知识梳理: 1.如何获取指定目录包含的文件和子目录 (1). DirectoryInfo.GetFiles():获取目录中(不 ...
- C#路径/文件/目录/I/O常见操作汇总
文件操作是程序中非常基础和重要的内容,而路径.文件.目录以及I/O都是在进行文件操作时的常见主题,这里想把这些常见的问题作个总结,对于每个问题,尽量提供一些解决方案,即使没有你想要的答案,也希望能提供 ...
- c# 文件遍历
DirectoryInfo TheFolder=new DirectoryInfo(folderFullName); //遍历文件夹 foreach(DirectoryInfo NextFolder ...
- C# IO
在.NET框架中进行的所有IO操作都要用到流(Stream). System.IO命名空间中包含许多IO相关的类,C#文件读写的类几乎都在其中,下面对其进行详细介绍. 主要类列表: 类 说明 Bina ...
- System.IO中的File、FileInfo、Directory与DirectoryInfo类(实例讲解)
一.建立的文件夹(对这些文件进行以上四个类的操作): 父目录: 父目录的子目录以及父目录下的文件: 子目录下的文件: 二.效果图 三.代码实现 using System; using System.I ...
- C# 读取文件的修改时间、访问时间、创建时间
C# 获取文件的各个时间如下: 表2<ccid_nobr> 属性 功能和用途 Attributes 返回和文件相关的属性值,运用了FileAttributes枚举类型值 CreationT ...
随机推荐
- 从头到尾彻底理解KMP(2014年8月22日版)
http://blog.csdn.net/v_july_v/article/details/7041827
- NLS_LANG SIMPLIFIED CHINESE_CHINA.AL32UTF8 和american_america.AL32UTF8
oadb01:/home/oracle> echo $NLS_LANG SIMPLIFIED CHINESE_CHINA.AL32UTF8 oadb01:/home/oracle> sql ...
- 清除IE输入框眼睛和叉叉
/* 清除IE输入框眼睛和叉叉 */::-ms-clear { display: none; } ::-ms-reveal { display: none; }
- 01_docker学习总结
01 docker学习总结 toolbox https://hub.docker.com/ https://docs.docker.com/engine/installation/mac/#from- ...
- linux文件权限整理
网上对linux文件权限的已经很多,不过还是要自己整理一下,不然每次都要查资料. linux下所有东西都是文件,包括设备,所以这里的文件也包括文件夹. 先是查看文件权限:ls -lh xzc@xzc- ...
- Java里多个Map的性能比較(TreeMap、HashMap、ConcurrentSkipListMap)
问题 比較Java原生的 1. TreeMap 2. HashMap 3. ConcurrentSkipListMap 3种Map的效率. 结果 模拟150W以内海量数据的插入和查找,通过添加和 ...
- BOOST中如何实现线程安全代码
1 需要include <boost/thread.hpp> 2 背景知识请参考<boost程序库完全开发指南>第12章 3 编绎:g++ -o mthread mthread ...
- Android应用切换皮肤功能实现
原文地址:http://www.eoeandroid.com/thread-318159-1-1.html 现在大多数android应用都支持切换皮肤的功能.比如千千静听,墨迹天气等等.本文介绍两种切 ...
- asp.net 发送邮件函数两则
using System.Net.Mail; using System.Text; using System.Net; #region 邮件发送 /// <summary> /// 邮件发 ...
- startActivityForResult中回调setResult注意事项
读 http://www.cnblogs.com/lijunamneg/archive/2013/02/05/2892616.html 有感 文中提出了一个核心问题: Android activity ...