如何在C#中解码HTML字符?
时间:2020-03-06 14:36:54 来源:igfitidea点击:
我有用HTML字符实体编码的电子邮件地址。 .NET中是否可以将它们转换为纯字符串?
解决方案
使用Server.HtmlDecode解码HTML实体。如果要转义HTML,即向用户显示<<和>
字符,请使用Server.HtmlEncode
。
我们可以使用HttpUtility.HtmlDecode
如果我们使用的是.NET 4.0+,则也可以使用WebUtility.HtmlDecode,它不需要额外的程序集引用,因为它在System.Net名称空间中可用。
如果没有服务器上下文(即我们离线运行),则可以使用HttpUtility.HtmlDecode。
正如@CQ所说,我们需要使用HttpUtility.HtmlDecode,但是默认情况下,它在非ASP .NET项目中不可用。
对于非ASP .NET应用程序,我们需要添加对System.Web.dll
的引用。在解决方案资源管理器中右键单击项目,选择"添加引用",然后浏览" System.Web.dll"的列表。
现在已经添加了引用,我们应该可以使用标准名称" System.Web.HttpUtility.HtmlDecode"访问该方法,或者为System.Web插入" using"语句以使事情变得更容易。
在.Net 4.0上:
System.Net.WebUtility.HtmlDecode()
无需包括Cproject的程序集