chcę przekonwertować &
do &, "
z "itp Czy istnieje funkcja w C#, który mógłby to zrobić bez ręcznego pisania wszystkie opcje?Konwersja & do & etc
Odpowiedz
System.Web.HttpUtility.HtmlDecode()
Działa to w środowisku ASP.NET. Ale poza tym odpowiedź Matta jest lepsza. – M4N
Zakładałem ASP.NET. Dokumentacja wspomina o HtmlDecode HttpUtility, ponieważ tak właśnie wywołuje Server.HtmlEncode. Łatwo to zrozumieć czytając dokumentację - dokumentacja Server.HtmlEncode w rzeczywistości wyjaśnia, co robi, niestety HttpUtility.HtmlDecode nie. – RichardOD
Użyj statycznej metody
HttpUtility.HtmlEncode
zmienić &
do &
i "
do "
. Użyj odwzorowania, aby wykonać odwrotną stronę.
Dobry artykuł na ten temat: Different ways how to escape an XML string in C#
NET < 4 prostego kodera
public static string HtmlEncode(string value)
{
return value.Replace("&", "&").Replace("<", "<").Replace(">", ">").Replace("\"", """).Replace("'", "'");
}
Twoja metoda konwertuje w niewłaściwy sposób – thumbmunkeys
Można użyć System.Net.WebUtility.HtmlDecode(uri);
nie działa HttpUtility.HtmlDecode dla '& amp' –
@ AbuHamzah to nie powinno działać dla & amp; ale powinno działać dla & – Peter
to działa tylko dla .NET v4 –