zoukankan      html  css  js  c++  java
  • C#中拷贝指定文件夹下的所有文件夹目录到指定文件夹中的方法

    原文地址:http://www.biye5u.com/article/Csharp/fileprog/2011/4198.html

    本文给出了一个在C#中拷贝指定文件夹下的所有文件夹目录到指定文件夹中的方法。

    public static void CopyFolder(string strFromPath,string strToPath)
    {
           //如果源文件夹不存在,则创建
           if (!Directory.Exists(strFromPath))
           { 
                  Directory.CreateDirectory(strFromPath);
           }
           //取得要拷贝的文件夹名
           string strFolderName = strFromPath.Substring(strFromPath.LastIndexOf("\") +
             1,strFromPath.Length - strFromPath.LastIndexOf("\") - 1);
           //如果目标文件夹中没有源文件夹则在目标文件夹中创建源文件夹
           if (!Directory.Exists(strToPath + "\" + strFolderName))
           { 
                  Directory.CreateDirectory(strToPath + "\" + strFolderName);
           }
           //创建数组保存源文件夹下的文件名
           string[] strFiles = Directory.GetFiles(strFromPath);
           //循环拷贝文件
           for(int i = 0;i < strFiles.Length;i++)
           {
                  //取得拷贝的文件名,只取文件名,地址截掉。
                  string strFileName = strFiles[i].Substring(strFiles[i].LastIndexOf("\") + 1,strFiles[i].Length - strFiles[i].LastIndexOf("\") - 1);
                  //开始拷贝文件,true表示覆盖同名文件
                  File.Copy(strFiles[i],strToPath + "\" + strFolderName + "\" + strFileName,true);
           }
           //创建DirectoryInfo实例
           DirectoryInfo dirInfo = new DirectoryInfo(strFromPath);
           //取得源文件夹下的所有子文件夹名称
           DirectoryInfo[] ZiPath = dirInfo.GetDirectories();
           for (int j = 0;j < ZiPath.Length;j++)
           {
                  //获取所有子文件夹名
                  string strZiPath = strFromPath + "\" + ZiPath[j].ToString(); 
                  //把得到的子文件夹当成新的源文件夹,从头开始新一轮的拷贝
                  CopyFolder(strZiPath,strToPath + "\" + strFolderName);
           }
    }

  • 相关阅读:
    jQuery学习笔记
    MAMP的使用
    svn使用
    Docker 下安装 MySQL时,docker-compose.yml 的写法
    MySQL 8报错:The user specified as a definer ('mysql.infoschema'@'localhost') does not exist
    Zookeeper 总结及安装
    Docker 在 Linux 下的安装与配置
    Linux更换国内软件源
    gitlab-runner一直处于挂起/pedding状态
    GitLab出现forbidden的解决方法
  • 原文地址:https://www.cnblogs.com/gbnw/p/4585775.html
Copyright © 2011-2022 走看看