C#删除只读文件或文件夹(解决File.Delete无法删除文件)
程序员文章站
2023-11-18 21:06:46
c#删除只读文件的方法:
if (file.getattributes(ffname).tostring().indexof("readonly") != -1...
c#删除只读文件的方法:
if (file.getattributes(ffname).tostring().indexof("readonly") != -1) file.setattributes(ffname, fileattributes.normal); file.delete(ffname);//不能删除只读文件
c#删除只读文件夹的方法:
只读文件夹删除需要先删除文件夹内的文件,然后在使用删除文件夹才能成功,否则将会报没有权限访问。
下面是遍历删除文件夹代码
/// <summary> /// 用来遍历删除目录下的文件以及该文件夹 /// </summary> public void deletefilebydirectory(directoryinfo info) { foreach (directoryinfo newinfo in info.getdirectories()) { deletefilebydirectory(newinfo); } foreach (fileinfo newinfo in info.getfiles()) { newinfo.attributes = newinfo.attributes &~(fileattributes.archive | fileattributes.readonly | fileattributes.hidden); newinfo.delete(); } info.attributes = info.attributes & ~(fileattributes.archive | fileattributes.readonly | fileattributes.hidden); info.delete(); }
另外说明:
在操作文件夹时候,在没有删除文件夹里面文件时候貌似对文件夹设置fileattributes是没有效果,只有文件全部删除后才能设置文件夹属性。
上一篇: laravel框架学习记录之表单操作详解