覆盖文件的最快方法是什么?

Jer*_*rry 1 c# copy file

我知道这听起来很微不足道,但我有一个非常具体的理由要求.

我正在通过一个非常糟糕的网络到达印度孟买.如果我是本地人,我只需运行以下代码:

                if (File.Exists(f2))
                {
                    File.Delete(f2);
                }

                File.Copy(f1, f2);
Run Code Online (Sandbox Code Playgroud)

当然,我必须先测试文件是否存在,因为我不能只将文件复制到现有文件的顶部.C#对此抱怨.这是问题.."测试它是否存在第一个"仅需5秒.然后删除约3个.最后,副本大约需要15个.对于15秒的副本,最终需要23秒.

这是增加8秒,或大约50%的开销,只是为了防止C#错误.

有没有办法说

File.Copy(f1, f2, Just_do_it_damnit)
Run Code Online (Sandbox Code Playgroud)

...没有所有"它存在"的开销吗?

Gab*_*abe 13

是的,您可以使用File.Copy(f1, f2, true)覆盖目标文件.