string 源文件目录 = @"D:\x";
string 目标目录 = @"F:\y";
public void copyDir(string srcPath, string aimPath){
try
{
//如果不存在目标路径,则创建之
if (!System.IO.Directory.Exists(aimPath)){
System.IO.Directory.CreateDirectory(aimPath);
}
//令目标路径为aimPath\srcPath
string srcdir = System.IO.Path.Combine(aimPath, System.IO.Path.GetFileName(srcPath));
//如果源路径是文件夹,则令目标目录为aimPath\srcPath\
if (Directory.Exists(srcPath))
srcdir += Path.DirectorySeparatorChar;
// 如果目标路径不存在,则创建目标路径
if (!System.IO.Directory.Exists(srcdir))
{
System.IO.Directory.CreateDirectory(srcdir);
}
//获取源文件下所有的文件
String[] files = Directory.GetFileSystemEntries(srcPath);
foreach (string element in files)
{
//如果是文件夹,循环
if (Directory.Exists(element))
copyDir(element, srcdir);
else
File.Copy(element, srcdir + Path.GetFileName(element), true);
}
}
catch
{
Console.WriteLine("无法复制");
}
}
本文介绍了一个使用 C# 编写的递归函数,该函数可以将一个文件夹及其所有内容复制到另一个位置。文章详细展示了如何创建目标路径、处理文件及子文件夹,并提供了错误处理方式。

被折叠的 条评论
为什么被折叠?



