【发布时间】:2013-08-02 07:02:44
【问题描述】:
Source 和 Target 具有相同的子目录,如下所示:
c:\fs\source\a\
c:\fs\源\b\
c:\fs\target\a\
c:\fs\目标\b\
如果不存在文件,我正在努力将文件从源复制到目标。 C# 中比较源文件夹与目标文件夹的最佳方法是什么 - 检查目标文件是否不退出,将文件从特定源(c:\fs\source\a\config.xml 和 app.config)复制到特定目标(c:\fs\目标\a\)。如果存在目标文件,请忽略它。 C#怎么写?
非常感谢您的代码示例。谢谢!
public void TargetFileCreate()
{
foreach (var folder in SourceFolders)
{
string[] _sourceFileEntries = Directory.GetFiles(folder);
foreach (var fileName in _sourceFileEntries)
{ //dont know how to implement here:
//how to compare source file to target file to check if files exist or not
//c:\fs\source\A\config.xml compares to c:\fs\target\A\ (no files) that should be pasted
//c:\fs\source\B\config.xml compares to c:\fs\target\B\config.xml that is already existed - no paste
}
}
}
【问题讨论】:
-
我尝试在源文件夹和目标文件夹之间的两个循环(foreach)中进行搜索,您可以在其中比较特定文件夹并检查该文件夹是否没有文件,将文件从源复制到该文件夹。我的代码看起来很奇怪。我希望看到更好的编码方式......
标签: c# directory copy-paste directoryinfo system.io.fileinfo