我正在尝试将+20000文件从一个目录复制到另一个目录,调用三个单独的File.Copy方法。这些文件的范围可以从26KB到3MB。使用三种方法的原因是因为我需要按以下顺序复制这些文件。 * .EXT1 => * .EXT2 => * .EXT3
整个复制程序总共需要2-3个小时。我在这里做错了什么,或者是否有更快的方法从一个目录复制到另一个目录?
utility.GetFilesFromSource("*.EXT1");
utility.CopyFilesToPath(srcPath);
utility.GetFilesFromSource("*.EXT2");
utility.CopyFilesToPath(srcPath);
utility.GetFilesFromSource("*.EXT3");
utility.CopyFilesToPath(srcPath);
public static void GetFilesFromSource(string fileExtension)
{
try
{
FileInfo[] Files = SourceDirectory.GetFiles(fileExtension)
.Where(f => f.Name.Contains(suffixName)).ToArray();
}
catch
{
throw;
}
}
public static void CopyFilesToPath(string path)
{
try
{
foreach (FileInfo file in Files)
{
File.Copy(file.FullName, Path.Combine(path, file.Name));
}
}
catch
{
throw;
}
}