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


    引用: http://www.jb51.net/article/72181.htm

     

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

  • 相关阅读:
    java正则表达式校验密码必须是包含大小写字母、数字、特殊符号的8位以上组合
    ActiveMQ入门
    枚举的使用
    SSM整合
    springmvc 狂神说的详细笔记
    狂神说Java Mybatis笔记
    Spring5入门基础知识
    Ajax的使用详解
    Filter 过滤器的使用详解
    mysql备份与恢复命令
  • 原文地址:https://www.cnblogs.com/davytitan/p/5126546.html
Copyright © 2020-2023  润新知