当前位置: 移动技术网 > IT编程>开发语言>c# > C#删除只读文件或文件夹(解决File.Delete无法删除文件)

C#删除只读文件或文件夹(解决File.Delete无法删除文件)

2019年07月18日  | 移动技术网IT编程  | 我要评论

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是没有效果,只有文件全部删除后才能设置文件夹属性。

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网