2009-10-13 26 views
44

Quiero convertir & a &, " a ", etc. ¿Hay una función en C# que podría hacer eso sin tener que escribir todas las opciones manualmente?conversión de & a & etc

Respuesta

75
System.Web.HttpUtility.HtmlDecode() 
+0

no funciona HttpUtility.HtmlDecode para el '& amp' –

+1

@ AbuHamzah no debería funcionar para & amp; pero debería funcionar para & – Peter

+0

esto funciona solo para .NET v4 –

4
+1

Esto funciona en ASP.NET. Pero de lo contrario, la respuesta de Matt es mejor. – M4N

+0

Estaba asumiendo ASP.NET. La documentación menciona HtmlDecode de HttpUtility, ya que esto es lo que Server.HtmlEncode llama de todos modos. Es fácil resolver esto leyendo la documentación: la documentación de Server.HtmlEncode realmente explica lo que hace, desafortunadamente HttpUtility.HtmlDecode no lo hace. – RichardOD

20

usa el método estático

HttpUtility.HtmlEncode 

cambiar & a & y " a ". Utilice

HttpUtility.HtmlDecode 

para hacer el revés.

-3

para .NET 4 < sencilla codificador

public static string HtmlEncode(string value) 
    { 
     return value.Replace("&", "&amp;").Replace("<", "&lt;").Replace(">", "&gt;").Replace("\"", "&quot;").Replace("'", "&apos;"); 
    } 
+0

su método se convierte al revés – thumbmunkeys

16

Puede utilizar System.Net.WebUtility.HtmlDecode(uri);