使用以下代码,我试图覆盖文件(如果存在)。 Currenly它抛出IOException。我该如何解决这个问题?
File.Copy(filePath, newPath);
答案 0 :(得分:116)
答案 1 :(得分:16)
此函数有一个包含第三个参数的重载。此参数称为“覆盖”。如果您传递true
,只要该文件不是只读文件,它就会被覆盖。
答案 2 :(得分:6)
然后拨打the overload
File.Copy(filePath, newPath, true);
答案 3 :(得分:4)
然后使用其他File.Copy(string, string, boolean)
。第三个参数指示是否覆盖目标文件(如果要覆盖,则为true
,否则为false
。
但你有什么期望?如果该函数设计为在目标文件存在时抛出,则需要找到解决该问题的方法。所以:
File.Copy(string, string)
周围创建一个包装器,如果它存在,则删除目标文件。答案 4 :(得分:4)
从MSDN开始,您可以:
File.Copy(filePath, newPath, true);
答案 5 :(得分:2)
File.Copy(filePath, newPath, bool overwrite)
做到了。
答案 6 :(得分:1)
这可以帮到你:
我使用它并且它有效,
File.Copy(src,des,true); //(string source, string destination, bool overwrite)