Url Unicode кодировка символов - PullRequest
       12

Url Unicode кодировка символов

5 голосов
/ 07 сентября 2011

Как кодировать URL-адреса, содержащие Unicode?Я хотел бы передать его утилите командной строки, и мне нужно сначала закодировать его.

Пример: http://zh.wikipedia.org/wiki/白雜訊

становится http://zh.wikipedia.org/wiki/%E7%99%BD%E9%9B%9C%E8%A8%8A.

Ответы [ 4 ]

7 голосов
/ 07 сентября 2011

Вы можете использовать метод HttpUtility.UrlPathEncode в сборке System.Web (требуется полный профиль .NET Framework 4):

var encoded = HttpUtility.UrlPathEncode("http://zh.wikipedia.org/wiki/白雜訊");
5 голосов
/ 14 ноября 2016

Согласно MSDN, вы больше не можете использовать UrlPathEncode.

Итак, правильный способ сделать это сейчас,

var urlString = Uri.EscapeUriString("http://zh.wikipedia.org/wiki/白雜訊");
0 голосов
/ 14 декабря 2016

У меня была проблема с турецким характером. <a href="/@Html.Raw(string)" решил проблему

0 голосов
/ 07 сентября 2011
Server.UrlEncode(s);

.NET-строки изначально являются Unicode-строками (если быть точным, в кодировке UTF-8), поэтому вам ничего не нужно, кроме как вызвать HttpServerUtility.UrlEncode (хотя так называемое «встроенное» свойство Server будет доступно в большинстве контекстов в asp) .net, где вы можете сделать это).

...