• 文件夹复制删除 C#


    /// <summary>
      /// 将整个文件夹复制到目标文件夹中。
      /// </summary>
         /// <param name="srcPath">源文件夹</param>
      /// <param name="aimPath">目标文件夹</param>
      public static void CopyDir(string srcPath,string aimPath)
      {
       try
       {
        // 检查目标目录是否以目录分割字符结束如果不是则添加之
        if(aimPath[aimPath.Length-1] != Path.DirectorySeparatorChar)
         aimPath += Path.DirectorySeparatorChar;
        // 判断目标目录是否存在如果不存在则新建之
        if(!Directory.Exists(aimPath))
         Directory.CreateDirectory(aimPath);
        // 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组
        // 如果你指向copy目标文件下面的文件而不包含目录请使用下面的方法
        // string[] fileList = Directory.GetFiles(srcPath);
        string[] fileList = Directory.GetFileSystemEntries(srcPath);
        // 遍历所有的文件和目录
        foreach(string file in fileList)
        {
         // 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件
         if(Directory.Exists(file))
          CopyDir(file,aimPath+Path.GetFileName(file));
          // 否则直接Copy文件
         else
          File.Copy(file,aimPath+Path.GetFileName(file),true);
        }
       }
       catch
       {
        Console.WriteLine("无法复制!");
       }
      }

      /// <summary>
      /// 将整个文件夹删除。
      /// </summary>
      /// <param name="aimPath">目标文件夹</param>
      public static void DeleteDir(string aimPath)
      {
       try
       {
        // 检查目标目录是否以目录分割字符结束如果不是则添加之
        if(aimPath[aimPath.Length-1] != Path.DirectorySeparatorChar)
         aimPath += Path.DirectorySeparatorChar;
        // 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组
        // 如果你指向Delete目标文件下面的文件而不包含目录请使用下面的方法
        // string[] fileList = Directory.GetFiles(aimPath);
        string[] fileList = Directory.GetFileSystemEntries(aimPath);
        // 遍历所有的文件和目录
        foreach(string file in fileList)
        {
         // 先当作目录处理如果存在这个目录就递归Delete该目录下面的文件
         if(Directory.Exists(file))
         {
          DeleteDir(aimPath+Path.GetFileName(file));
         }
          // 否则直接Delete文件
         else
         {
          File.Delete (aimPath+Path.GetFileName(file));
         }
        }
        //删除文件夹
        //System.IO .Directory .Delete (aimPath,true);
       }
       catch
       {
        Console.WriteLine("无法删除!");
       }
      }

  • 相关阅读:
    利用百度地图API实现百度地图坐标拾取
    newtonsoft.json的JObject里的JSON数据 动态
    监听微信返回按钮
    C# 如何理解如下泛型约束 class A<T>:where T:class{}
    微博数据库设计 _转
    新浪微博,腾讯微博mysql数据库主表猜想 __转
    Ferris教程学习笔记:js示例3.9 倒计时时钟
    Ferris教程学习笔记:js示例3.8 简易网页时钟
    Ferris教程学习笔记:js示例3.6 判断数字是否为两位数
    Ferris教程学习笔记:js示例3.5 页面加载后累加,自加1
  • 原文地址:https://www.cnblogs.com/RobotTech/p/534590.html
Copyright © 2020-2023  润新知