Есть ли в .NET встроенные функции, сопоставляющие символьные объекты и их значения в Юникоде? - PullRequest
6 голосов
/ 27 февраля 2010
& Eacute ;  \u00C9
& egrave ;  \u00E8
& eacute ;  \u00E9
& apos   ;  \u0027

что-то вроде:

f("'") = '\u0027' where f :: string -> char
g('\u0027') = "'" where g :: char -> string

Или есть сторонняя библиотека с бесплатной лицензией в стиле BSD или MIT с чем-то в этом роде? В противном случае мне придется создать свое собственное отображение, но это довольно срочно, и я не хочу упустить доступную функциональность.

1 Ответ

3 голосов
/ 27 февраля 2010

Вы можете использовать SecurityElement.Escape метод для перехода от юникода к символьной сущности:

char c = '\u0027';
string entity = System.Security.SecurityElement.Escape(c.ToString());
Console.WriteLine(entity);

Что касается обратного пути, я думаю, что вам не повезло, и вам нужно написать свой собственный подход.

РЕДАКТИРОВАТЬ: вы также можете найти методы HttpUtility.HtmlEncode и HttpUtility.HtmlDecode полезными. Чтобы использовать их, вам нужно добавить ссылку на System.Web.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...