我需要将目录中的所有文件与列表中的文件名进行比较。
在下面的示例中,文件x.txt
在目录中不是exist
。
我需要使用单个foreach
循环。但是,即使列表不匹配,文件也在复制。如果列表与所有文件匹配,我只需要复制文件。
以下是一个示例代码:
static void Main(string[] args)
{
string dir = @"C:\example\";
string backupDir = @"C:\exampleBackup\";
var files = new List<string> { "a.txt", "b.txt", "c.txt", "x.txt" };
foreach (var file in files)
{
if(!File.Exists(Path.Combine(dir, file)))
{
//do this only if the list and directory matches
Console.Write("Directory and List do not match:\n");
break;
}
//If the list does not match the directory or either way then do this.
else
{
Console.Write("Directory and List Match:\n");
//if match then copy files to new directory
File.Copy(Path.Combine(dir, file), Path.Combine(backupDir, file), true);
}
}
Console.Write("Enter any key to exit");
Console.ReadKey();
}