xuyunhai20160827 Ответов: 1

Почему копирование файла не удалось, когда я копировал много раз


когда я использую файл.Функция копирования (path1, path2, true) для копирования файла много раз не удалась.
path2 имеет содержимое empy, и я использую API GetLastError, возвращаемое значение равно нулю.
или использовать попробовать поймать,но это не бросать исключение.
а потом я открываю каталог с path2, содержимое файла пустое, почему?
как я могу сделать успешную копию файла в любое время?

Я просматриваю свой код о path1 и path2,я уверен, что путь правильный и не имеет ошибки.
Я просто делаю два шага:
(1).opendialog и set path1, например c:\a.txt , скопируйте его в path2, например c:\temp.txt.
(2).Загрузите файл второй раз, opendialgo и установите path1 в новое значение,например c:\b.txt.
скопируйте его в path2 c:\temp.txt
но во второй раз, temp.txt это пустое содержимое, это означает, что копия не удалась, почему, я не могу понять причину.

Что я уже пробовал:

try
{
   File.Copy(filePath, tempPath, true);
   uint iiii = GetLastError();
}
 catch (Exception e)
{
    throw e;
}
<pre lang="c#">

1 Ответов

Рейтинг:
2

Jochen Arndt

Если вы не получили исключения, операция копирования завершилась успешно.

Если конечный файл существует после копирования, но имеет нулевой размер (пустой), то вывод состоит в том, что исходный файл тоже пуст.

Вы можете выполнить сравнение файлов после успешного копирования, чтобы проверить, идентичны ли они:
Как создать функцию сравнения файлов в Visual C#[^]