Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Escape-последовательности


Автор: Prehistorik 9.9.2009, 14:19
Приветствую. Появилась у меня задача читать из .net-ого кода текст со страничек, которые имеют адресс типа
http://estelad.ru/inf.pl?login=Мутабор&short=1

Если ввести эту строку в адресную строку браузера, то мы получим преобразованный адрес странички вида
Код

http://estelad.ru/inf.pl?login=%CC%F3%F2%E0%E1%EE%F0&short=1



Однако же, если воспользоваться следущим кодом:
Код

MessageBox.Show(System.Uri.EscapeUriString(http://estelad.ru/inf.pl?login=Мутабор&short=1]http://estelad.ru/inf.pl?login=Мутабор&short=1));


То получим мы ответ такой.
Код

http://estelad.ru/inf.pl?login=%D0%9C%D1%83%D1%82%D0%B0%D0%B1%D0%BE%D1%80&short=1


То есть он обрабатывает эту строчку как юникодную (двух-байтную) строку, а не как аскии строчку.

Где я не прав?


Автор: WarHog 9.9.2009, 15:49
Привет, попробуй
Код

System.Web.HttpContext.Current.Server.UrlPathEncode(@"http://estelad.ru/inf.pl?login=%CC%F3%F2%E0%E1%EE%F0&short=1")

Автор: Prehistorik 14.9.2009, 10:42
Цитата(WarHog @ 9.9.2009,  15:49)
Привет, попробуй
Код

System.Web.HttpContext.Current.Server.UrlPathEncode(@"http://estelad.ru/inf.pl?login=%CC%F3%F2%E0%E1%EE%F0&short=1")

Не работает. Пишет - нулльреференсэксепшн ((

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)