zoukankan      html  css  js  c++  java
  • 删除文件夹

    处理了以下问题

    System.IO.Directory.Delete 目录不是空的。
    对路径“License.rtf”的访问被拒绝 这个文件为只读属性
    当这个文件夹的子文件夹处于打开时删除失败

    using System.IO;
    /// <summary>
            /// 取消目录下的所有文件夹及子文件的只读属性
            /// </summary>
            /// <param name="dirPath"></param>
            private void DirectorySubFileCancelReadOnly(string dirPath)
            {
                string[] dirPathes = Directory.GetDirectories(dirPath, "*.*", SearchOption.AllDirectories);
                string[] filePathes = Directory.GetFiles(dirPath, "*.*", SearchOption.AllDirectories);
               
                foreach (var dp in dirPathes)
                {
                    DirectoryInfo dir = new DirectoryInfo(dirPath);
                    dir.Attributes = FileAttributes.Normal & FileAttributes.Directory;
                }
                foreach (var fp in filePathes)
                {
                    File.SetAttributes(fp, System.IO.FileAttributes.Normal);
                }
            }
    private void button1_Click(object sender, EventArgs e)
            {
              string s=@"D:AdministratorDocumentsMyProjectCSHARP_WinCtrlWindowsFormsApplication1inDebug我的文件夹\__history";
              try
              {
                  DirectorySubFileCancelReadOnly(s);
              }
              catch (System.Exception ex)
              {
                  
              }
              finally
              {
                  System.IO.Directory.Delete(s, true);
              }
            }
  • 相关阅读:
    模拟链表
    解密回文——栈
    解密QQ——队列
    排序算法的实现与比较
    2016年第七届蓝桥杯C/C++B组省赛题目解析
    记账类问题汇总
    斐波那契数列题型汇总
    MFC绘图小实验(1)
    MFC绘图基础——上机操作步骤
    求 pi 的近似值题型汇总
  • 原文地址:https://www.cnblogs.com/xe2011/p/3440719.html
Copyright © 2011-2022 走看看