我正在尝试将文件夹从源复制到目标。源和目标文件夹将位于同一目录中。 文件夹的结构会因每个副本而异,因此它必须是通用的。 该文件夹将包含需要复制的文件和子目录。 因此,无论它包含在另一个文件夹中,都应该复制一个文件夹的所有内容。
我希望这不是太过分了。但只是我正在寻找的一个简单的例子: 源文件夹路径:c:\ directories \ versions \ 11.0.2 目标文件夹路径:c:\ directories \ versions \ 11.0.3
将所有11.0.2内容复制到11.0.3
以下是我目前无效的代码:
//Create all of the directories
foreach (string dirPath in Directory.GetDirectories(sourceDir, "*",
SearchOption.AllDirectories))
Directory.CreateDirectory(dirPath.Replace(sourceDir, targetDir));
//Copy all the files
foreach (string newPath in Directory.GetFiles(sourceDir, "*.*",
SearchOption.AllDirectories))
File.Copy(newPath, newPath.Replace(sourceDir, targetDir));
有关如何实现这一目标的任何想法?
答案 0 :(得分:0)
此示例演示如何使用I / O类进行同步复制 目录的内容到另一个位置。在这个例子中, 用户可以指定是否还复制子目录。如果 子目录被复制,这个例子中的方法是递归的 通过在每个后续子目录中调用自身来复制它们,直到 没有更多要复制。
您还可以查看
异步操作使您可以执行资源密集型I / O. 操作没有阻塞主线程。这种表现 在Windows应用商店应用中,考虑因素尤其重要 桌面应用程序,其中耗时的流操作可以阻止UI 线程并使您的应用看起来好像不起作用。