您的位置: 首页 > 软件教程 > C#教程专题 > C#拷贝文件夹及文件

C#拷贝文件夹及文件

8.1分
出处:网络 时间:2011-06-22

您可能感兴趣的话题: C#  

核心提示:检查目标目录是否以目录分割字符结束如果不是则添加

  private void CopyDir(string srcPath, string aimPath)

  {

  try

  {

  // 检查目标目录是否以目录分割字符结束如果不是则添加

  if (aimPath[aimPath.Length - 1] != System.IO.Path.DirectorySeparatorChar)

  {

  aimPath += System.IO.Path.DirectorySeparatorChar;

  }

  // 判断目标目录是否存在如果不存在则新建

  if (!System.IO.Directory.Exists(aimPath))

  {

  System.IO.Directory.CreateDirectory(aimPath);

  }

  // 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组

  // 如果你指向copy目标文件下面的文件而不包含目录请使用下面的方法

  // string[] fileList = Directory.GetFiles(srcPath);

  string[] fileList = System.IO.Directory.GetFileSystemEntries(srcPath);

  // 遍历所有的文件和目录

  foreach (string file in fileList)

  {

  // 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件

  if (System.IO.Directory.Exists(file))

  {

  CopyDir(file, aimPath + System.IO.Path.GetFileName(file));

  }

  // 否则直接Copy文件

  else

  {

  System.IO.File.Copy(file, aimPath + System.IO.Path.GetFileName(file), true);

  }

  }

  }

  catch (Exception e)

  {

  throw;

  }

  }

网友评论
多特网友 2013-08-30 21:27:49 回复
非常好!我喜欢
多特网友 2013-08-30 21:27:49 回复
非常好!我喜欢
精品软件课程
更多 >
C++是一种静态数据类型检查的,支持多重编程... [详细]
Java,是由Sun Microsystem... [详细]
C语言是一种面向过程的计算机程序设计语言。多... [详细]
Visual Basic是一种由微软公司开发... [详细]
Oracle Database,又名Orac... [详细]
Visual Basic.NET是从 Vis... [详细]