2009-12-11 3 views
0

Как легко кодировать строку в utf8 с помощью .NET (VB или C#)? Например, мне нужно закодировать строку типа «Эта (есть) моя строка», результат должен быть строкой «Это +% 28is% 29 + my + string».encode string to utf8

ТИА

JP

+4

Это не UTF -8. Вы имеете в виду urlencoding. – troelskn

ответ

7

Это кодирование URL-адрес, а не кодирование UTF-8. Попробуйте этот метод:

HttpUtility.UrlEncode(value) 
+0

Спасибо, но в моем примере этот метод возвращает: «This + (is) + my + string» Кажется, что он не заменяет символы (и). –

+0

Зачем вам это нужно? На чем вы основываете свое решение относительно того, какие символы сбегают, а что нет? –

+0

Вот как это указано моим клиентом, см. Мой комментарий ниже. –

1

Похоже, что вам нужно кодировать URL, а не «кодировать в UTF-8».

Для этого использует

string encodedString = System.Web.HttpUtility.UrlEncode(yourString) 

(UTF-8, представляет собой механизм для представления Unicode символов внутри, а не для замены символов, которые иначе имеют значение при использовании в URI.)

+0

Это не похоже на символы (и). Я нашел дополнительную информацию о кодировке, которую должен использовать мой клиент. Он должен быть кодировкой HTML-формы в соответствии с форматом преобразования UTF-8. Как мне это сделать? –