Ни как не получается победить FtpWebRequest
От: vad7  
Дата: 15.05.12 07:45
Оценка:
Есть ftp железка ASUS DSL-N55U. Настроек нет ни каких, лога тоже нет.
Проблема с русскими именами — при вызове GetResponse() вываливается с ошибкой (550) Файл недоступен. Framework 3.5.

Путь например такой /AiDisk_a1/ftp_pvt/Выгрузки/, AbsoluteUri получается такой: "ftp://x.x.x.x/AiDisk_a1/ftp_pvt/%D0%92%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B8/"
Пробовал создавать uri через Uri(String, true), пробовал конвертить в UTF-8 (получается: Выгрузки) — все таже ошибка.
UsePassive — влияния не оказывает.
Сторонний софт работает с ftp нормально.
Виндовый ftp.exe показывает папки абракадабрами: ╨в╨╛╤А╨│╨╛╨▓╨╗╤П,
но если сделать cd по этому кривому имени, то переходит нормально. Пробовал использовать эти же абракадабры в FtpWebRequest.Create, но безрезультатно.

В тоже время, если русских букв в пути нет — все нормально работает.

Каким образом можно его победить?
Re: Ни как не получается победить FtpWebRequest
От: vad7  
Дата: 15.05.12 10:08
Оценка:
победил:
new Uri(Encoding.GetEncoding(1251).GetString(Encoding.UTF8.GetBytes(str)));
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.