没有System.Web的C#HTMLDecode可能?
我知道System.Web命名空间中有不同的方法来解码html实体(比如“%20”为空格)。 我正在构build一个Winforms应用程序,但是需要处理html编码的string。 基本上我有iTunes图书馆XML文件,并需要解码在那里的URL来检查文件。
这可能没有System.Web命名空间?
开发人员需要在其客户端应用程序中使用System.Web.HttpUtility,并且必须引用System.Web.dll并因此将目标版本为NET4(System.Web.dll处于Full状态),才能使用新的System.dll中的System.Net.WebUtility类(System.dll在NET4 Client Profile中)。 System.Net.WebUtility包含HtmlEncode和HtmlDecode。 Url编码可以使用System.Uri类(也在System.dll中)完成。
仅仅因为你正在编写一个Windows Forms应用程序并不能阻止你使用System.Web
。 只需添加一个对System.Web.dll
的引用。
你可以使用System.Net.WebUtility.HtmlDecode
:
将HTML传输的string转换为解码后的string。
看到这篇文章,如果你仍然好奇没有System.Web如何做到这一点。 它提供了一个URI解码的解决scheme(这实际上就是你正在解码的东西,而不是像“ – ”这样的HTML实体)
要使用.NET框架中的方法,您必须使用System.Web命名空间来获取HtmlDecode方法。
是的,你可以写自己的方法来做到这一点,但这不会有很大的意义。
只需添加对system.web的引用。
mybe它可以帮助winforms:
System.Uri.EscapeUriString(plainText);
你可以使用HttpUtility.UrlDecode
或HttpUtility.HtmlDecode