440 Stimmen

Wie kann ich HTML-Zeichen in C# dekodieren?

Ich habe E-Mail-Adressen mit HTML-Zeichenentitäten codiert. Gibt es etwas in .NET, das sie in normale Zeichenketten umwandeln kann?

675voto

Quintin Robinson Punkte 78652

Sie können HttpUtility.HtmlDecode verwenden.

Wenn Sie .NET 4.0+ verwenden, können Sie auch WebUtility.HtmlDecode verwenden, das keine zusätzliche Assembly-Referenz erfordert, da es im System.Net-Namespace verfügbar ist.

204voto

Indy9000 Punkte 8404

Auf .Net 4.0:

System.Net.WebUtility.HtmlDecode()

Es ist nicht erforderlich, eine Assembly für ein C#-Projekt einzuschließen

46voto

OwenP Punkte 24128

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 System.Web.dll hinzufügen. Klicken Sie mit der rechten Maustaste auf Ihr Projekt im Solution Explorer, wählen Sie "Verweis hinzufügen" und durchsuchen Sie dann die Liste nach System.Web.dll.

Nun, da der Verweis hinzugefügt wurde, sollten Sie in der Lage sein, auf die Methode mit dem voll qualifizierten Namen System.Web.HttpUtility.HtmlDecode zuzugreifen oder ein using-Statement für System.Web einzufügen, um die Dinge einfacher zu machen.

16voto

Rob Cooper Punkte 28132

Wenn kein Serverkontext vorhanden ist (d.h. Sie arbeiten offline), können Sie HttpUtility.HtmlDecode verwenden.

16voto

Abhishek Jaiswal Punkte 1041

Um HTML zu entschlüsseln, werfen Sie einen Blick auf den folgenden Code

string s = "Svendborg Værft A/S";
string a = HttpUtility.HtmlDecode(s);
Response.Write(a);

Die Ausgabe ist wie folgt

 Svendborg Værft A/S

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X