我们都知道,在HMTL语言中,<、 >、&等符号是有特殊的意思的,也就是HTML内置的用来格式化字符的一些标志。但有时候我们需要往Web界面输出这些特殊的符号怎么办呢?
比如:我们现在要在界面上输出<B >您好</B >,如果我们直接在源码中这样写,那么在界面上显示出来就是将"您好"加粗的效果了,<B >与</B >并没有显示出来,因为它们已经被浏览器解释为加粗的标记了。
那么我们应该怎么处理以让界面上如实的显示我们想要的<B >与</B >呢?这里讲得方法,就是在后台将要输出的字符先经过HTML编码再输出。当然,如实显示字符的方法有很多种,本章只讲解HTML编码的方法。
编码:
HtmlEncode-对要在浏览器中显示的字符串进行编码。
解码:
HtmlDecode--对已被编码以消除无效HTML字符的字符串进行解码。
示例:
对字符编码的效果
protected override void OnInit(EventArgs e)
{
Response.Write(Server.HtmlEncode("<B >您好</B >"));
}
输出:<B >您好</B >
实际上,编码就是对特殊字符进行了编码,如:
"<"编码成了:<
" >"编码成了:>
"&"编码成了:&a m p;
对字符先编码再解码的效果
protected override void OnInit(EventArgs e)
{
Response.Write(Server.HtmlDecode((Server.HtmlEncode("<B >您好</B >"))));
}
输出:
您好注意:HtmlDecode与HtmlEncode是HttpServerUtility实例下的方法,使用前请引用命名空间System.Web.
以上为HTML编码与解码的全部内容,希望能给新手朋友带来帮助。