如何在.NET 中清除文件上的只读标志并保留其余 ?
答案 0 :(得分:4)
你不能这样做:
FileInfo f = new FileInfo("yourfile.txt");
f.IsReadOnly = false;
或者我错过了什么?
答案 1 :(得分:2)
我将获取该文件的FileInfo实例,然后将IsReadOnly属性设置为false(根据此处的文档:http://msdn.microsoft.com/en-us/library/system.io.fileinfo.isreadonly.aspx):
new FileInfo("path").IsReadOnly = false;
如果你坚持在File类上使用静态GetAttributes和SetAttributes方法,你可以这样做:
File.SetAttributes("path",
File.GetAttributes("path") & ~FileAttributes.ReadOnly);
要清除位图上的标志时的一般模式是获取标志的值(在本例中为FileAttributes.ReadOnly),将其反转(使用〜运算符),然后将反转值应用于包含各种标志的值(在本例中为File.GetAttributes(“path”))。