zoukankan      html  css  js  c++  java
  • 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是没有效果,只有文件全部删除后才能设置文件夹属性。

  • 相关阅读:
    Beta 冲刺 (5/7)
    Beta 冲刺 (4/7)
    软件产品案例分析(团队)
    Beta 冲刺 (3/7)
    Beta 冲刺 (2/7)
    Beta 冲刺 (1/7)
    BETA 版冲刺前准备
    个人作业——软件工程实践总结作业
    Beta 答辩总结
    Beta 冲刺 (7/7)
  • 原文地址:https://www.cnblogs.com/davytitan/p/5126546.html
Copyright © 2011-2022 走看看