Согласно следующей таблице для стандарта ISO-8859-1 , похоже, есть имя объекта и номер объекта, связанные с каждым зарезервированным символом HTML.
Так, например, для символа é
:
Имя объекта: & eacute;
Номер объекта: & # 233;
Аналогично для персонажа >
:
Имя объекта: & gt;
Номер объекта: & # 62;
Для данной строки HttpUtility.HtmlEncode
возвращает строку в кодировке HTML, но я не могу понять, как это работает. Вот что я имею в виду:
Console.WriteLine(HtmlEncode("é>"));
//Outputs é>
Похоже, что для символа é
используется номер объекта, а для символа >
- имя объекта.
Так действительно ли метод HtmlEncode работает со стандартом ISO-8859-1? Если да, то есть ли причина, по которой он иногда использует имя объекта, а иногда номер объекта? Что еще более важно, могу ли я заставить его надежно дать мне имя объекта?
EDIT: Спасибо за ответы, ребята. Однако я не могу расшифровать строку, пока не выполню поиск. Не вдаваясь в подробности, текст сохраняется в списке SharePoint, а «поиск» выполняется самим SharePoint (с использованием запроса CAML). В общем, я не могу.
Я пытаюсь придумать способ преобразования номеров сущностей в имена, есть ли в .NET функция, которая это делает? Или какая-нибудь другая идея?