首页 > 其他分享 >复制源目录及文件到另一个目录下

复制源目录及文件到另一个目录下

时间:2023-05-06 14:26:10浏览次数:30  
标签:Name 源目录 destDir item 复制 Combine 目录

 1 /// <summary>
 2 /// 复制源目录及文件到另一个目录下
 3 /// </summary>
 4 /// <param name="srcDir">源目录</param>
 5 /// <param name="destDir">目标目录</param>
 6 /// <param name="recursion">是否递归复制</param>
 7 private void DirectoryCopy(string srcDir, string destDir, bool recursion)
 8 {
 9     try
10     {
11         var di = new DirectoryInfo(srcDir);
12         var fsis = di.GetFileSystemInfos();
13 
14         foreach (var item in fsis)
15         {
16             // 目录复制
17             if (item is DirectoryInfo)
18             {
19                 Directory.CreateDirectory(Path.Combine(destDir, item.Name));
20 
21                 // 递归复制子目录
22                 if (recursion)
23                 {
24                     DirectoryCopy(item.FullName, Path.Combine(destDir, item.Name));
25                 }
26             }
27             else
28             {
29                 // 文件复制
30                 File.Copy(item.FullName, Path.Combine(destDir, item.Name), true);
31             }
32         }
33     }
34     catch (Exception)
35     {
36         throw;
37     }
38 }

 

标签:Name,源目录,destDir,item,复制,Combine,目录
From: https://www.cnblogs.com/baymaxwh/p/17377075.html

相关文章

  • keepalived-学习目录
    1、Keepalived基本概述https://www.cnblogs.com/ygbh/p/17373758.html2、Keepalived安装https://www.cnblogs.com/ygbh/p/17373985.html3、keepalived高可用配置【抢占式】https://www.cnblogs.com/ygbh/p/17374339.html4、keepalived高可用配置【非抢占式】https:/......
  • Linux 将另一服务器上的文件或文件夹复制到当前服务器
    1.文件复制1.1 将本地文件拷贝到远程  scp文件名用户名@计算机IP或者计算机名称:远程路径例如:scp/root/install.*[email protected]:/usr/local/src1.2 从远程将文件拷回本地scp用户名@计算机IP或者计算机名称:文件名本地路径例如:[email protected]......
  • MySQL:如何实现主从复制?
    简介MySQL主从复制是一个异步的复制过程,底层是基于MySQL数据库自带的二进制日志功能。指一台或多台MySQL数据库(从库,slave)从另一台数据库(主库,master)进行日志的复制、日志解析,最终实现从库数据与主库数据保持一致。 原理1、master将改变记录到二进制日志中。2、slave将mast......
  • C# 获取本地共享目录和网络共享目录
    1.在工程添加对应的cs文件usingSystem;usingSystem.Collections;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.IO;usingSystem.Linq;usingSystem.Net;usingSystem.Runtime.InteropServices;usingSystem.Text;usingSystem.Web;......
  • Linux系统目录架构
    1.目录树结构图,如下:2.每个目录的具体功能描述boot:包括内核和其他系统启动时使用的文件。root:系统管理员、超级用户root的默认主目录。dev:存放设备文件的目录,linux系统把所有的设备都看成是一个文件。bin:存放可执行文件命令的地方,一般用户可以操作这些命令,比如ls,pwd等外部......
  • pipeline 多个代码库到不同目录
    pipeline{agentanystages{stage('CloneRepository1'){steps{dir('repo1'){gitbranch:'main',url:'https://github.com/example/repo1.git'......
  • Linux 批量修改目录权限,用户组和所有者;kill指定端口
     例:修改data目录以及该目录下所有文件的权限可读可写。chmod-R777data/ 例:修改data目录以及该目录下所有文件的用户组为:"shaun".chownshaundata/-R 例:修改data目录以及该目录下所有文件的所有者为:"shaun".chgrpshaundata/-R  #这里端口号均以8......
  • .net maui blazor创建存储自定义目录文件
    stringdir="/storage/emulated/0/Android/data/com.example.myapp/data";if(!Directory.Exists(dir)){Directory.CreateDirectory(dir);}stringpath=Path.Combine(dir,"a.txt");File.WriteAllText(path,"abc");//com.example.myapp......
  • 18、GTID复制 (Global Transaction ID 全局事务标识符)
    GTID复制(GlobalTransactionID全局事务标识符)GTID(GlobalTransactionID全局事务标识符)MySQL5.6版本开始支持,但不太成熟,建议使用MySQL5.7以上版本的GTID功能MySQL5.6版本出现没有默认开启,5.7中即使不开启也有匿名的GTID记录.1、开启GTID功能可以支持多DUMP线......
  • 14、MySQL复制延迟原因及解决办法
    复制延迟原因:写入速度超过了复制速度解决办法:1、升级到mysql5.7以上版本,开启GTID功能,主库可以并发事务,支持并发传输及并行多个SQL线程2、减少大事务,将大事务拆分成小事务减少锁(和开发相关)3、sync_binlog=1加快binlog更新时间,从而加快日志复制只要事务一提交,立即写日志(默认......