Подтвердить что ты не робот

'File.Copy' не перезаписывает файл

Используя следующий код, я пытаюсь переписать файл, если он существует. Currenly выбрасывает IOException. Как я могу исправить эту проблему?

File.Copy(filePath, newPath);
4b9b3361

Ответ 1

Используйте

File.Copy(filePath, newPath, true);

Третий параметр перезаписывается, поэтому, если вы установите его в true, файл назначения будет перезаписан.

Смотрите: File.Copy в MSDN

Ответ 2

Существует перегрузка этой функции, которая содержит третий параметр. Этот параметр называется "перезаписывать". Если вы пройдете true, пока файл не доступен только для чтения, он будет перезаписан.

Ответ 4

Затем используйте другой File.Copy(string, string, boolean). Третий параметр указывает, следует ли перезаписывать файл назначения, если он существует (true, если вы хотите перезаписать, false в противном случае).

Но что вы ожидали? Если функция предназначена для броска, когда файл назначения существует, вам нужно найти способ решения этой проблемы. Итак, либо:

  • Поиск документации или Intellisense для перегрузки, которая делает то, что вы просите.
  • Запретить создание обертки вокруг File.Copy(string, string), которая удалит файл назначения для вас, если он существует.

Ответ 5

Из MSDN вы можете сделать:

File.Copy(filePath, newPath, true);

Ответ 6

File.Copy(filePath, newPath, bool overwrite)

делает это.

Ответ 7

Это может помочь вам:

Я использую это, и он работает,

File.Copy(src,des,true); //(string source, string destination, bool overwrite)

Ссылка (MSDN): Метод File.Copy(String, String, Boolean)