C# 如何复制列表中的文件<;字符串>;到另一个目录?

C# 如何复制列表中的文件<;字符串>;到另一个目录?,c#,.net,winforms,C#,.net,Winforms,不删除或重命名任何目录中的文件。 只需复制文件,使其以相同的顺序位于两个目录中 我做到了: for (int i = 0; i < AnimatedGifFiles.Count; i++) { } for(int i=0;if.EndsWith(“.gif”,StringComparison.OrdinalIgnoreCase)).ToArray()

不删除或重命名任何目录中的文件。 只需复制文件,使其以相同的顺序位于两个目录中

我做到了:

for (int i = 0; i < AnimatedGifFiles.Count; i++)
                    {

                    }
for(int i=0;i
动画边缘文件是列表

例如,列表中的第一个文件如下所示:

C:\Users\temp\radar012929.gif


因此,要使用System.IO将此文件复制到另一个目录,例如C:\Users\temp1

,如果目标目录中尚未包含该文件,则可以迭代源目录并复制到目标目录

public void CopyFiles(string sourceDir, string targetDir)
{
    string[] files = Directory.GetFiles(sourceDir);
    foreach (var fileName in files)
    {
        string targetFile = Path.Combine(targetDir, (new FileInfo(fileName)).Name);
        if (File.Exists(targetFile) == false)
            File.Copy(fileName, targetFile);
    }
}

您寻求帮助的问题是什么?您是否不知道System.IO.File.Copy方法存在?这可能吗?
System.IO.File.Copy(AnimatedGifFiles[i],@“C:\Users\temp1\newFileName.gif”)下次请在询问之前做一些研究,你不是计算机史上第一个这样做的人这是我的错误我不需要将sourceDir中的所有文件复制到targetDir,只需要复制AnimatedGifFiles列表中的文件,因为在sourceDir中我有很多文件,但我只需要复制列表中的文件。它必须是列表中的文件,而不是sourceDir中的所有文件。您可以使用
AnimatedGifFiles
,因为它是foreach语句中的一个列表,并且它将完全按照您所述的方式处理所需的文件。您还可以将linq添加到
GetFiles
以确定gif文件,例如
Directory.GetFiles(sourceDir).Where(f=>f.EndsWith(“.gif”,StringComparison.OrdinalIgnoreCase)).ToArray()