c#设置文件及文件夹的属性
c#中通过FileAttributes枚举来设置文件或文件夹的属性。
FileAttributes 枚举 成员名称 说明
Archive 文件的存档状态。应用程序使用此属性为文件加上备份或移除标记。
Compressed 文件已压缩。
Device 保留供将来使用。
Directory 文件为一个目录。
Encrypted 该文件或目录是加密的。对于文件来说,表示文件中的所有数据都是加密的。对于目录来说,表示新创建的文件和目录在默认情况下是加密的。
Hidden 文件是隐藏的,因此没有包括在普通的目录列表中。
Normal 文件正常,没有设置其他的属性。此属性仅在单独使用时有效。
NotContentIndexed 操作系统的内容索引服务不会创建此文件的索引。
Offline 文件已脱机。文件数据不能立即供使用。
ReadOnly 文件为只读。
ReparsePoint 文件包含一个重新分析点,它是一个与文件或目录关联的用户定义的数据块。
SparseFile 文件为稀疏文件。稀疏文件一般是数据通常为零的大文件。
System 文件为系统文件。文件是操作系统的一部分或由操作系统以独占方式使用。
Temporary 文件是临时文件。文件系统试图将所有数据保留在内存中以便更快地访问,而不是将数据刷新回大容量存储器中。不再需要临时文件时,应用程序会立即将其删除。 看一个简单的例子: /// <summary> /// 设置文件只读 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void Button2_Click(object sender, EventArgs e) { //设置文件属性 File.SetAttributes(Server.MapPath("~/TextFile.txt"), FileAttributes.ReadOnly); //获取文件属性 FileAttributes MyAttributes = File.GetAttributes(Server.MapPath("~/TextFile.txt")); Literal2.Text = MyAttributes.ToString(); } FileAttributes 具有FlagsAttribute属性,将枚举作为位域(即一组标志)处理。位域通常用于由可组合出现的元素组成的列表,而枚举常数通常用于由互相排斥的元素组成的列表。因此,位域设计为通过按位“或”运算组合来生成未命名的值。 看个例子: /// <summary> /// 设置文件只读加隐藏 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void Button3_Click(object sender, EventArgs e) { //设置文件属性 File.SetAttributes(Server.MapPath("~/TextFile.txt"), FileAttributes.ReadOnly | FileAttributes.Hidden); //获取文件属性 FileAttributes MyAttributes = File.GetAttributes(Server.MapPath("~/TextFile.txt")); Literal3.Text = MyAttributes.ToString(); } 这样就可以组合设置多个属性了。 如果文件已经存在了,直接设置文件的属性,会移除文件已经存在的其它属性。 可以先获取文件的属性,然后再添加需要设置的属性。 /// <summary> /// 附加只读属性 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void Button4_Click(object sender, EventArgs e) { //获取文件属性 FileAttributes MyAttributes = File.GetAttributes(Server.MapPath("~/TextFile.txt")); //设置文件属性 File.SetAttributes(Server.MapPath("~/TextFile.txt"), MyAttributes | FileAttributes.ReadOnly); //重新获取文件属性 MyAttributes = File.GetAttributes(Server.MapPath("~/TextFile.txt")); Literal4.Text = MyAttributes.ToString(); } 对于设置文件夹的属性和设置文件一样。 另外还有其它几个设置属性的方法: 这里不一一说明了。参考:http://msdn.microsoft.com/zh-cn/library/system.io.fileattributes.aspx
c#设置文件及文件夹的属性的更多相关文章
- svn设置提交忽略某些文件或文件夹
在svn客户端,想设置忽略提交.class文件,通过 properties > New > Other 添加一个忽略的属性,,还是不行:部分屏蔽了,部分class还是在列表中 再次参考了一 ...
- eclipse svn不能忽略文件及文件夹,ignore设置无效 ?
https://blog.csdn.net/zengmingen/article/details/79025445 https://blog.csdn.net/zengmingen/article/d ...
- linux批量设置部分文件与文件夹权限
批量设置web目录下文件.文件夹名为sitemap.xml.sitemap 属性为777 cd /www/web find ./ -name 'sitemap' -exec chmod -R 77 ...
- eclipse svn提交忽略文件及文件夹,ignore设置无效..
如果之前提交过此文件,就不能设置忽略该文件了.所以第一次提交的时候要搞清楚再提交. [亲测,的确如此,用 Windows -> Preferences -> Team -> Igno ...
- 如何为基于windows验证的站点的某个页面、文件或文件夹单独设置匿名访问
在MOSS的项目中,我们经常碰到要单独为基于windows验证的站点的某个页面.文件或文件夹单独设置匿名访问即不登录就可以直接访问.比如说站点的A的某些图片或文件URL存在B站点下的文件夹下.此时访问 ...
- Linux 服务器如何设置文件和文件夹的读写权限
修改文件可读写属性的方法 例如:把index.htm 文件修改为可写可读可执行: chmod 777 index.htm 要修改目录下所有文件属性可写可读可执行: chmod 777 *.* 该命令中 ...
- 背水一战 Windows 10 (86) - 文件系统: 获取文件夹的属性, 获取文件夹的缩略图
[源码下载] 背水一战 Windows 10 (86) - 文件系统: 获取文件夹的属性, 获取文件夹的缩略图 作者:webabcd 介绍背水一战 Windows 10 之 文件系统 获取文件夹的属性 ...
- Deepin中设置文件或文件夹权限
Deepin中设置文件或文件夹权限 -R 递归进行某项操作,不论是删除文件夹或者修改文件夹下所有文件权限 权限更改,777相当于完全控制权限: 更改一个文件夹或文件的权限:chmod 777 文件 ...
- 转:git设置过滤忽略的文件或文件夹
from: https://www.cnblogs.com/foohack/p/4629255.html git设置过滤忽略的文件或文件夹 我们一般向代码仓库提交项目的时候,一般需要忽略编译生成的 ...
随机推荐
- 关于UIPageViewController去除边缘点击手势
如果page上方还有一层UI控件的话,不去除边缘点击手势会造成手势的冲突干扰. 首先我做的处理是设置pageView的手势代理 for (UIGestureRecognizer *gr in _pag ...
- (转)C++ 11 多线程--线程管理
说到多线程编程,那么就不得不提并行和并发,多线程是实现并发(并行)的一种手段.并行是指两个或多个独立的操作同时进行.注意这里是同时进行,区别于并发,在一个时间段内执行多个操作.在单核时代,多个线程是并 ...
- JS对象 神奇的Math对象,提供对数据的数学计算。注意:Math 对象是一个固有的对象,无需创建它,直接把 Math 作为对象使用就可以调用其所有属性和方法。这是它与Date,String对象的区别
Math对象 Math对象,提供对数据的数学计算. 使用 Math 的属性和方法,代码如下: <script type="text/javascript"> var m ...
- 前端常用的库和实用技术之JavaScript面向切面编程
Aspect Oriented Programming(AOP)面向切面编程是一个比较热门的话题. AOP主要实现的目的是针对业务处理过程中的切面进行提取,它所面对的是处理过程 中的某个步骤或阶段,以 ...
- LeetCode第六题—— ZigZag Conversion(字符串的“之”字形转换)
题目描述: The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows ...
- ~/.bashrc的常用alias设置,30 个方便的 Bash shell 别名
centos6.5/centos7系统中,alias定义在/etc/bashrc,分别写在/etc/profile.d/*.sh中,可以在此目录添加my.sh,或者~/.bashrc,或者~/.bas ...
- Windows与Linux获取进程集合的方法
Windows: List<String> tasklist=new ArrayList<String>(); try { Process process = Runtime. ...
- Mysql优化系列之索引性能
实际上,前面的数据类型和表结构设计优化不能算优化,只能算规范,也就是说在设计表的时候,应该且必须做到这些 索引是sql优化的核心部分,在<高性能Mysql>中单独抽出一章讲,也印证了其重要 ...
- springboot-配置多数据源(AOP实现)(HikariCP + MybatisPlus + mysql + SqlServer)
场景: springboot项目,默认使用HikariCP连接池 + MybatisPlus持久层框架 + mysql数据库等一套流程,现需求需去第三方sqlserver数据库拉取数据,直连数据库,不 ...
- LGP5495 Dirichlet 前缀和
题目 不是很明白为什么要叫做模板 考虑到\(a_i\)能对\(b_j\)产生贡献,当且仅当\(a_i=\prod p_k^{a_k},b_j=\prod p_k^{b_k},\forall k \ a ...