Antworten:
Sie können verwenden HttpUtility.HtmlDecode
Wenn Sie .NET 4.0+ verwenden, können Sie auch verwenden, für WebUtility.HtmlDecodedas keine zusätzliche Assemblyreferenz erforderlich ist, da diese im System.NetNamespace verfügbar ist .
HttpUtility.UrlDecode
In .NET 4.0:
System.Net.WebUtility.HtmlDecode()
Für ein C # -Projekt muss keine Assembly hinzugefügt werden
Wie @CQ sagt, müssen Sie HttpUtility.HtmlDecode verwenden , aber es ist standardmäßig nicht in einem Nicht-ASP .NET-Projekt verfügbar.
Für eine Nicht-ASP .NET-Anwendung müssen Sie einen Verweis auf hinzufügen System.Web.dll. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf Ihr Projekt, wählen Sie "Referenz hinzufügen" und durchsuchen Sie die Liste nach System.Web.dll.
Nachdem die Referenz hinzugefügt wurde, sollten Sie in der Lage sein, unter Verwendung des vollständig qualifizierten Namens auf die Methode zuzugreifen System.Web.HttpUtility.HtmlDecodeoder eine usingAnweisung einzufügen System.Web, um die Arbeit zu vereinfachen.
Wenn kein Serverkontext vorhanden ist (dh wenn Sie offline ausgeführt werden), können Sie HttpUtility verwenden . HtmlDecode .
Verwenden Sie Server.HtmlDecodediese Option, um die HTML-Entitäten zu dekodieren. Wenn Sie dem HTML- Code entkommen möchten , dh dem Benutzer das Zeichen <und anzeigen möchten >, verwenden Sie Server.HtmlEncode.
Um HTML zu dekodieren, sehen Sie sich den folgenden Code an
string s = "Svendborg Værft A/S";
string a = HttpUtility.HtmlDecode(s);
Response.Write(a);
Ausgabe ist wie
Svendborg Værft A/S
Es ist auch erwähnenswert, dass Sie HtmlAgilityPack wie ich verwenden sollten, wenn Sie es verwenden HtmlAgilityPack.HtmlEntity.DeEntitize(). Es dauert a stringund gibt a zurück string.
Schreiben Sie eine statische Methode in eine Dienstprogrammklasse, die eine Zeichenfolge als Parameter akzeptiert und die dekodierte HTML-Zeichenfolge zurückgibt.
Nehmen Sie das using System.Web.HttpUtilityin Ihre Klasse auf
public static string HtmlEncode(string text)
{
if(text.length > 0){
return HttpUtility.HtmlDecode(text);
}else{
return text;
}
}
Für .net 4.0
Fügen Sie einen Verweis auf System.net.dlldas Projekt hinzu, und verwenden Sie using System.Net;dann die folgenden Erweiterungen
// 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;
}
}