Файл не найден Исключение.. Но это там

Эй, это будет один из тех глупых вопросов. Я пытаюсь забрать файл в моей локальной системе, и я продолжаю получать FileNotFoundException.

Кто-то меня прямо сказал:)

if( File.Exists(@"C:\logs\hw-healthways-prod_2009-08-26.tar"))
{
     Console.WriteLine("Yay");
}
else
{
     throw new FileNotFoundException();   
}

Пробовал перемещать файл в том же месте, что и исполняющее приложение, и сделал следующее:

 if( File.Exists("hw-healthways-prod_2009-08-26.tar"))

То же самое.

Затем я сделал случайный txt файл и припарковал его там тоже. "me.txt"

И это работает?! Итак, вы являетесь проблемой имени файла?

Ответы

Ответ 1

Попробуйте сделать Directory.GetFiles(@"C:\logs"). Возможно, что у рассматриваемого файла есть нечетные символы, которые интерпретируются одним способом в Windows Explorer (предположительно, где вы читаете "свойство файла"?), Но другим способом .NET Framework. Это может произойти, если в имени файла есть символы UTF-8 (возможно, en dash?).

Ответ 2

Может быть, имя файла "hw-healthways-prod_2009-08-26 .tar.tar" вместо "hw-healthways-prod_2009-08-26 .tar", у меня была эта проблема, потому что по умолчанию файлы расширения скрыты в окнах

Ответ 3

Возможно, вы захотите проверить права доступа к файлам. Возможно, у вашего компьютера нет разрешения на файл.

Ответ 4

C:\logs\hw-healthways-prod_2009-08-26.tar должен быть C:\\logs\\hw-healthways-prod_2009-08-26.tar.\означает, что следующий символ является escape-символом.