Spiga

在ASP.NET去掉文件的只读属性

2004-12-24 18:54 by 匡匡, 2499 visits, 收藏, 编辑

我们可以使用 System.IO.File 类的 SetAttributes 方法为一个文件设置相关的属性,如:

// 为文件加上一个只读的属性
FileAttributes attrs = File.GetAttributes("c:\\a.txt");
File.SetAttributes(
"c:\\a.txt", attrs | FileAttributes.ReadOnly);

怎么把这个只读属性去掉呢?

// 先把文件的属性读取出来
FileAttributes attrs = File.GetAttributes("c:\\a.txt");

// 下面表达式中的 1 是 FileAttributes.ReadOnly 的值
   // 此表达式是把 ReadOnly 所在的位改成 0,
attrs = (FileAttributes)((int)attrs & ~(1));

File.SetAttributes(
"c:\\a.txt", attrs);