Я пытаюсь прочитать текстовый файл с FTP-сервера, и я получаю «550 Файл не найден».ошибка, даже если я на 100% уверен, что файл есть.
Вот варианты для URI, которые я пробовал:
ftp://server/MySubFolder/MyFile.txt
ftp://server/%2fMySubFolder/MyFile.txt
ftp://server/MySubFolder/%2fMyFile.txt
ftp://server/%2fMySubFolder/%2fMyFile.txt
ftp://server/%2f/MySubFolder/MyFile.tx
ftp://server/MySubFolder/%2f/MyFile.txt
ftp://server/%2f/MySubFolder/%2f/MyFile.txt
Все они возвращают одну и ту же страницу результатов:
200 Type set to I.
200 PORT command successful.
550 The system cannot find the path specified.
Вот код, который я пробую:
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(file);
request.Method = WebRequestMethods.Ftp.DownloadFile;
request.Credentials = new NetworkCredential(username, password);
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Stream responseStream = response.GetResponseStream();
StreamReader reader = new StreamReader(responseStream);
string content = reader.ReadToEnd();
reader.Close();
response.Close();
Я также пытался вызвать SetMethodRequiresCWD перед созданием моих FtpWebRequest
объектов, но это тоже не помогло.
Мое приложение - служба Windows профиля клиента .NET 4.0.
Буду признателен за любую помощь.