简体   繁体   English

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

[英]Copy all files from source directory to target directory in C# with file structure

I want to copy list of files from Source directory to destination directory. 我想将文件列表从源目录复制到目标目录。

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

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

Something I am trying to do 我正在尝试做的事情

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);
            }
}

I am newbie to C#, so apologize for silly mistakes. 我是C#的新手,为您的愚蠢错误表示歉意。 Any elegant way to do the same? 有什么优雅的方法可以做到吗?

Since List of files contains the below structure a.bat , test\\a.bat . 由于files列表包含以下结构a.bat ,所以test\\a.bat Any directory function to create the same structure? 任何目录功能可以创建相同的结构吗?

MSDN has an example for this: MSDN为此提供了一个示例:

How to: Copy Directories 如何:复制目录

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM