Подтвердить что ты не робот

Декодирование всех объектов HTML

Я ищу некоторую функцию, которая будет декодировать большое количество объектов HTML.

Причина заключается в том, что я работаю над некоторым кодом для получения содержимого HTML и превращения его в простой текст, проблема, которую у меня есть, заключается в том, что многие объекты не преобразуются с помощью HttpUtility.HtmlDecode.

Некоторые примеры объектов, которые меня беспокоят, - это  , & amp;, & copy;.

Это для .net 3.5.

4b9b3361

Ответ 1

Тогда, возможно, вам понадобится HttpUtility.HtmlDecode?. Он должен работать, вам просто нужно добавить ссылку на System.Web. По крайней мере, так было в .Net Framework < 4.

Например, следующий код:

MessageBox.Show(HttpUtility.HtmlDecode("&amp;&copy;"));

Работала, и результат был как ожидалось (символ амперсанда и авторского права). Вы уверены, что проблема в HtmlDecode, а не что-то еще?

ОБНОВЛЕНИЕ: Другой класс, способный выполнять задание, WebUtility (опять-таки метод HtmlDecode) появился в более новых версиях .Net. Однако, похоже, с ним некоторые проблемы. См. Вопрос HttpUtility vs. WebUtility.

Ответ 2

Используйте WebUtility.HtmlDecode, включенный в .Net 4

Например, если я запускаю консольное приложение:

  Console.WriteLine(WebUtility.HtmlDecode("&nbsp;, &amp;, &copy;"));

Я получаю , &, c