根据选择将目录从源复制到目标

时间:2018-12-19 17:56:04

标签: c# system.io.file

我已经实现了CopyDirectoryAndFiles功能,如下所示,但无法正常工作

案例-我想从源到目标复制/创建NAC -> NAC11 -> NAC12(这是文件夹结构),仅创建/复制NAC11->NAC12 我正在传递源路径,因为-@"C:\TestArea\Destination\SUP000001\20041202-01-0002-001\NAC的最后一部分(\ NAC)是在运行时从UI中选择要复制的文件夹,如果我仅以{{ 1}}它复制了@"C:\TestArea\Destination\SUP000001\20041202-01-0002-001的所有内容,但是我只希望选择一个。.我如何在下面的代码中处理这种情况?

src->dest

1 个答案:

答案 0 :(得分:0)

如果我对您的理解正确,那么您指定了以下源目录和目标目录:

var source = @"C:\TestArea\Destination\SUP000001\20041202 - 01 - 0002 - 001\NAC";
var dest = @"C:\TestArea\Destination\SUP000001\20041202-01-0002-001";

您想将NAC目录(及其所有内容)从source复制到destination目录,但是问题是{{1}的内容}目录将直接复制到NAC文件夹中,如果您确实要以以下路径结尾(并且此20041202-01-0002-001目录应该与源NAC目录相同) :

NAC

如果是这种情况,那么您只需要先通过在源目录中添加源目录的名称来修改目标目录路径即可,

@"C:\TestArea\Destination\SUP000001\20041202-01-0002-001\NAC"

下面的代码示例应该可以解决问题:

destination = Path.Combine(destination, sourceDir.Name);