Это действительно безумие! Я создал файл, используя Far 2.0 (http://www.farmanager.com/,, возможно, вы можете использовать какой-нибудь другой файловый менеджер); его имя файла 'C: \ 123.txt' (да, с пробелом в конце пути к файлу) .
И я пытаюсь скопировать или переместить этот файл с помощью программы на C #:
File.Copy("C:\\123.txt ", "C:\\456.txt", true);
Но происходит сбой с сообщением «Не удалось найти файл« C: \ 123.txt ».» исключение. Но файл существует!
Я пытаюсь использовать Windows API:
[DllImport("kernel32.dll")]
public static extern int MoveFile(string lpExistingFileName, string lpNewFileName);
MoveFile("C:\\123.txt ", "C:\\456.txt",);
Но и это не помогает.
И я пытаюсь использовать утилиту xcopy:
C:\>xcopy "C:\123.txt " "C:\456.txt" /Y
File not found - 123.txt
0 File(s) copied
Как я могу переименовать файл программно? И почему это происходит?
Моя ОС: Windows 7 x64