c# - httputility - Decodificando todas las entidades HTML
httputility c# (2)
Entonces tal vez necesites el HttpUtility .HtmlDecode ?. Debería funcionar, solo necesitas agregar una referencia a System.Web. Al menos así fue en .Net Framework <4.
Por ejemplo el siguiente código:
MessageBox.Show(HttpUtility.HtmlDecode("&©"));
Funcionó y la salida fue la esperada (símbolo y símbolo de copyright). ¿Estás seguro de que el problema está dentro de HtmlDecode y no otra cosa?
ACTUALIZACIÓN: otra clase capaz de hacer el trabajo, WebUtility (nuevamente método HtmlDecode) vino en las versiones más nuevas de .Net. Sin embargo, parece que hay algunos problemas con él. Vea la pregunta HttpUtility vs. WebUtility .
Estoy buscando alguna función que decodifique una buena cantidad de entidades HTML.
El motivo es que estoy trabajando en algún código para tomar contenido HTML y convertirlo en texto sin formato, el problema que tengo es que muchas entidades no se convierten utilizando HttpUtility.HtmlDecode
.
Algunos ejemplos de entidades que me preocupan son & nbsp ;, & amp ;, & copy ;.
Esto es para .net 3.5 .
Use WebUtility.HtmlDecode
incluido en .Net 4
Por ejemplo, si ejecuto en una aplicación de consola:
Console.WriteLine(WebUtility.HtmlDecode(" , &, ©"));
Recibo , &, c