如何将文件从一个目录复制到另一个目录?

时间:2013-08-08 07:38:52

标签: c# winforms

string[] s = Directory.GetFiles(t, "*.txt",SearchOption.AllDirectories);
for (int i = 0; i < s.Length; i++)
{
    File.Copy(s[i],
}

File.Copy会将文件复制到另一个文件名。 我想保留相同的文件名,只需将它们从一个目录复制到另一个目录。

4 个答案:

答案 0 :(得分:5)

使用此:

 File.Copy(s[i], "c:\\anotherFolder\\" + Path.GetFileName(s[i]));

答案 1 :(得分:3)

你可以这样做:

Directory.GetFiles("c:\\temp", "*.txt", SearchOption.AllDirectories) // get the files
    .Select(c => new FileInfo(c)) // project each filename into a fileinfo
    .ToList() // convert to list
    .ForEach(c => c.CopyTo("d:\\temp\\" + c.Name)); // foreach fileinfo, copy to the desired path + the actual file name

答案 2 :(得分:1)

您可以查看this帖子,这应该会有所帮助;

this MSDN链接:

代码段:

var sourceDir = @"c:\sourcedir";
var destDir = @"c:\targetdir";
var pattern = "*.txt";

foreach (var file in new DirectoryInfo(sourceDir).GetFiles(pattern))
{
   file.CopyTo(Path.Combine(destDir, file.Name));
}

希望这有帮助吗?

答案 3 :(得分:0)

你这样做是正确的..

参见microsoft的示例

http://msdn.microsoft.com/en-us/library/bb762914.aspx

另一个解决方案可能是调用xcopy命令......