Удаляет ли File.Move() оригинал в IoException?C#

Место общения программистов C#
Ответить
Anonymous
 Удаляет ли File.Move() оригинал в IoException?

Сообщение Anonymous »

Мой веб-сервис записывает файлы, которые читаются другой программой. Чтобы программа не прочитала их до того, как они закончат запись, я называю их .tmp, а затем использую File.Move, чтобы переименовать их в .xml. Моя проблема заключается в запуске тысяч файлов всего за пару минут. Я успешно написал "12345.tmp", но при File.Move("12345.tmp", "12345.xml") я получаю:

Исключение: процесс не может получить доступ к файлу, поскольку он используется другим процессом.

Меня не волнуют имена файлов, поэтому я повторяю попытку File.Move("12345.tmp", "12346.xml"):

Исключение: Исключение: не удалось найти файл «12345.tmp».

Удаляет ли File.Move() исходный файл, если при переименовании файла возникает ошибка? Почему? Как обеспечить успешное переименование файла или его сохранение без изменений?

Подробнее здесь: https://stackoverflow.com/questions/519 ... oexception
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»