Я хочу отправить строку с веб-клиентом, и у меня проблемы с немецким umlaute. Проверка с помощью Fiddler, я вижу, что следующее преобразование для параметра пост состоит из:String Encoding Umlaute
ä to %E4
(который изо-8859-1 в соответствии с онлайн-инструмент энкодера)
Вы знаете, как я могу achive это для WP7?
Я уже пробовал:
string urlstring = HttpUtility.UrlEncode("ä");
РЕЗУЛЬТАТ:
%c3%a4
string urlstring1 = HttpUtility.HtmlEncode("ä");
РЕЗУЛЬТАТ:
ä
Encoding isoenc = Encoding.GetEncoding("ISO-8859-1");
byte[] utf8characters = Encoding.UTF8.GetBytes("ä");
byte[] isoArray = Encoding.Convert(Encoding.UTF8, Encoding.GetEncoding("ISO-8859-1"),utf8characters);
string finalString = isoenc.GetString(isoArray,0, isoArray.Length);
РЕЗУЛЬТАТ:
ä
Я также проверил этот SilverLight инструмент, где вы можете создавать собственные кодировки .. без успеха.
Я действительно схожу с ума по этой проблеме, если у кого есть идея, пожалуйста, дайте мне знать.
Спасибо, Ralf
Это интересный вопрос. Вы можете получить E4, выполнив: «Encoding.GetEncoding (« iso-8859-1 »). GetBytes (« ä ») [0] .ToString (« X »)' Оттуда, возможно, вы создадите собственный кодировщик строк, который проверяет байт больше 127 и заменяет их своим кодированным значением? Кроме того, действительно ли нужно отправить '% E4'? Возможно, проблема заключается в том, что значение, которое вы отправляете на сервер, не кодируется в iso-8859-1, начиная с –
, поэтому я снова проверил без кодирования: я отправляю строку, вкл. Запрос «ä» будет отклонен, я отправлю строку вкл. «% E4» он запускается с сервера и показывает «ä». – c0ldsun
, поэтому я снова проверил без кодировки: я отправляю строку вкл. Запрос «ä» будет отклонен; я отправляю строку вкл. «% E4» принимается с сервера и отображает «ä», когда отправляется «% c3% a4» (стандартный HttpUtility.Encoding), он показывает «Ã» »(кстати, я также пытался использовать webclient.encoding iso-8859- 1, но это не сработает, потому что строка имеет несколько параметров (с =), webclient.кодирование utf8 прекрасно, и также показано в Fiddler, когда я делаю сообщение через веб-страницу). Но метод, который вы упомянули, является интересным подходом, я буду исследовать это. Thx :-) – c0ldsun