使用文件结构将所有文件从源目录复制到C#中的目标目录

时间:2015-10-12 12:23:03

标签: c# directory-structure

我想将源目录中的文件列表复制到目标目录。

Source\a.bat
Source\test\a.bat

Dest\a.bat
Dest\test\a.bat

我想做的事情

public static void ReplicateFile(List<string> files, ref string destinatonFilePath){
      foreach (var file in files)
            {
                var directory = Path.GetDirectoryName(file);
                var fileName = Path.GetFileName(file);
                var destDir = Path.Combine(destinatonFilePath, directory);

                if (!string.IsNullOrEmpty(destDir))
                    CreateDirectory(new DirectoryInfo(destDir));

                if (fileName != null) File.Copy(file, Path.Combine(destDir, fileName), true);
            }
}

我是C#的新手,所以为愚蠢的错误道歉。有任何优雅的方式做同样的事情吗?

由于files的列表包含以下结构a.battest\a.bat。 用于创建相同结构的任何目录函数?

1 个答案:

答案 0 :(得分:2)

MSDN有一个例子:

How to: Copy Directories