Файл не найден, исключение .. Но это там - PullRequest
16 голосов
/ 29 августа 2009

Эй, это будет один из тех глупых вопросов. Я пытаюсь забрать файл в своей локальной системе и получаю 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"))

То же самое.

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

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

Ответы [ 4 ]

13 голосов
/ 29 августа 2009

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

11 голосов
/ 04 марта 2015

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

0 голосов
/ 29 августа 2009

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

0 голосов
/ 29 августа 2009

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...