C#拷贝文件夹及文件

简介: private void CopyDir(string srcPath, string aimPath)         {             try             { ...

  1. private void CopyDir(string srcPath, string aimPath)
  2.         {
  3.             try
  4.             {
  5.                 // 检查目标目录是否以目录分割字符结束如果不是则添加之
  6.                 if (aimPath[aimPath.Length - 1] != System.IO.Path.DirectorySeparatorChar)
  7.                 {
  8.                     aimPath += System.IO.Path.DirectorySeparatorChar;
  9.                 }

  10.                 // 判断目标目录是否存在如果不存在则新建之
  11.                 if (!System.IO.Directory.Exists(aimPath))
  12.                 {
  13.                     System.IO.Directory.CreateDirectory(aimPath);
  14.                 }

  15.                 // 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组
  16.                 // 如果你指向copy目标文件下面的文件而不包含目录请使用下面的方法
  17.                 // string[] fileList = Directory.GetFiles(srcPath);
  18.                 string[] fileList = System.IO.Directory.GetFileSystemEntries(srcPath);

  19.                 // 遍历所有的文件和目录
  20.                 foreach (string file in fileList)
  21.                 {
  22.                     // 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件
  23.                     if (System.IO.Directory.Exists(file))
  24.                     {
  25.                         CopyDir(file, aimPath + System.IO.Path.GetFileName(file));
  26.                     }

  27.                     // 否则直接Copy文件
  28.                     else
  29.                     {
  30.                         System.IO.File.Copy(file, aimPath + System.IO.Path.GetFileName(file), true);
  31.                     }
  32.                 }
  33.             }
  34.             catch (Exception e)
  35.             {
  36.                 throw;
  37.             }
  38.         }


转自博客:
http://blog.csdn.net/flysun0311/article/details/4108088
相关文章
|
存储 监控 算法
基于 C# 的局域网计算机监控系统文件变更实时监测算法设计与实现研究
本文介绍了一种基于C#语言的局域网文件变更监控算法,通过事件驱动与批处理机制结合,实现高效、低负载的文件系统实时监控。核心内容涵盖监控机制选择(如事件触发机制)、数据结构设计(如监控文件列表、事件队列)及批处理优化策略。文章详细解析了C#实现的核心代码,并提出性能优化与可靠性保障措施,包括批量处理、事件过滤和异步处理等技术。最后,探讨了该算法在企业数据安全监控、文件同步备份等场景的应用潜力,以及未来向智能化扩展的方向,如文件内容分析、智能告警机制和分布式监控架构。
325 3
c# 创建文件夹
在 C# 中,创建文件夹和文件依赖于 .NET 框架提供的 `System.IO` 命名空间中的类与操作系统交互。
基于 C# 编写的 Visual Studio 文件编码显示与修改扩展插件
基于 C# 编写的 Visual Studio 文件编码显示与修改扩展插件
567 9
|
C# Windows
C#实现指南:将文件夹与exe合并为一个exe
C#实现指南:将文件夹与exe合并为一个exe
1500 9
|
存储 C#
【C#】大批量判断文件是否存在的两种方法效率对比
【C#】大批量判断文件是否存在的两种方法效率对比
566 1
|
安全 C# 数据安全/隐私保护
实现C#编程文件夹加锁保护
【10月更文挑战第16天】本文介绍了两种用 C# 实现文件夹保护的方法:一是通过设置文件系统权限,阻止普通用户访问;二是使用加密技术,对文件夹中的文件进行加密,防止未授权访问。提供了示例代码和使用方法,适用于不同安全需求的场景。
792 0
|
XML 存储 缓存
C#使用XML文件的详解及示例
C#使用XML文件的详解及示例
914 0
|
C# 图形学 数据安全/隐私保护
Unity数据加密☀️ 二、使用Rider将C#代码生成DLL文件
Unity数据加密☀️ 二、使用Rider将C#代码生成DLL文件
|
10月前
|
XML 前端开发 C#
C#编程实践:解析HTML文档并执行元素匹配
通过上述步骤,可以在C#中有效地解析HTML文档并执行元素匹配。HtmlAgilityPack提供了一个强大而灵活的工具集,可以处理各种HTML解析任务。
404 19
|
C# 开发者
C# 一分钟浅谈:Code Contracts 与契约编程
【10月更文挑战第26天】本文介绍了 C# 中的 Code Contracts,这是一个强大的工具,用于通过契约编程增强代码的健壮性和可维护性。文章从基本概念入手,详细讲解了前置条件、后置条件和对象不变量的使用方法,并通过具体代码示例进行了说明。同时,文章还探讨了常见的问题和易错点,如忘记启用静态检查、过度依赖契约和性能影响,并提供了相应的解决建议。希望读者能通过本文更好地理解和应用 Code Contracts。
457 3