Respuestas:
Puedes usar HttpUtility.HtmlDecode
Si está utilizando .NET 4.0+, también puede usarlo, WebUtility.HtmlDecode
que no requiere una referencia de ensamblaje adicional, ya que está disponible en el System.Net
espacio de nombres.
HttpUtility.UrlDecode
En .Net 4.0:
System.Net.WebUtility.HtmlDecode()
No es necesario incluir el ensamblaje para un proyecto de C #
Como dice @CQ, debe usar HttpUtility.HtmlDecode , pero no está disponible en un proyecto que no sea ASP .NET de forma predeterminada.
Para una aplicación que no sea ASP .NET, debe agregar una referencia a System.Web.dll
. Haga clic derecho en su proyecto en el Explorador de soluciones, seleccione "Agregar referencia", luego busque la lista System.Web.dll
.
Ahora que se agrega la referencia, debería poder acceder al método utilizando el nombre completo System.Web.HttpUtility.HtmlDecode
o insertar una using
declaración para System.Web
facilitar las cosas.
Si no hay contexto de servidor (es decir, se está ejecutando sin conexión), puede usar HttpUtility . HtmlDecode .
Use Server.HtmlDecode
para decodificar las entidades HTML. Si desea escapar del HTML, es decir, mostrar el carácter <
y >
al usuario, use Server.HtmlEncode
.
Para decodificar HTML, eche un vistazo debajo del código
string s = "Svendborg Værft A/S";
string a = HttpUtility.HtmlDecode(s);
Response.Write(a);
La salida es como
Svendborg Værft A/S
También vale la pena mencionar que si está utilizando HtmlAgilityPack como yo, debería usarlo HtmlAgilityPack.HtmlEntity.DeEntitize()
. Toma a string
y devuelve a string
.
Escriba un método estático en alguna clase de utilidad, que acepte la cadena como parámetro y devuelva la cadena html decodificada.
Incluye el using System.Web.HttpUtility
en tu clase
public static string HtmlEncode(string text)
{
if(text.length > 0){
return HttpUtility.HtmlDecode(text);
}else{
return text;
}
}
Para .net 4.0
Agregue una referencia al System.net.dll
proyecto con using System.Net;
luego use las siguientes extensiones
// Html encode/decode
public static string HtmDecode(this string htmlEncodedString)
{
if(htmlEncodedString.Length > 0)
{
return System.Net.WebUtility.HtmlDecode(htmlEncodedString);
}
else
{
return htmlEncodedString;
}
}
public static string HtmEncode(this string htmlDecodedString)
{
if(htmlDecodedString.Length > 0)
{
return System.Net.WebUtility.HtmlEncode(htmlDecodedString);
}
else
{
return htmlDecodedString;
}
}