html转义字符

1、首先列下一些基本的html转义字符

特殊字符

字符 十进制 转义字符
" "
& & &
< &#60; &lt;
> &#62; &gt;
不断开空格 &#160; &nbsp;

 

至于其他转义字符,请查看 http://jiangyongyuan.iteye.com/blog/393711

 

2、Html转义

    可以用HTML 标记来为字符串加入样式,例如:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="welcome">Welcome to <b>Android</b>!</string>
</resources>

     支持以下html元素:

· <b>文本加粗bold

· <i>文本变斜体italic

· <u>文本加下划线underline。

 

    有时可能要创建一个样式化的文本资源,并可作为格式化串使用。通常这不能生效,因为String.format(String, Object...)方法会去除字符串内的所有的样式信息。解决方法是写入一段转义后的HTML标记,然后在格式化后再用fromHtml(String)恢复出这些样式。例如:

(1)将样式化的文本资源存储为转义后的HTML字符串:

<resources>
    <string name="welcome_messages">Hello, %1$s! You have &lt;b>%2$d new messages&lt;/b>.</string>
</resources>

    在这个格式化字符串里,加入了一个<b>元素。注意左尖括号是用标记&lt转义过的HTML。

(2)然后,按照通常方式格式化字符串,并调用fromHtml(String) 把HTML文本转换成带样式的文本。

Resources res = getResources(); 
String text = String.format(res.getString(R.string.welcome_messages), username,mailCount); 
CharSequence styledText = Html.fromHtml(text);

    因为fromHtml(String)方法会格式化所有的HTML内容,所以要确保用htmlEncode(String)对带格式化文本的字符串内所有可能的HTML字符进行转义。比如,如果要把可能包含诸如“<”或“&”等字符的串作为参数传给String.format(),那么必须在格式化之前对这些字符进行转义。格式化后,再把字符串传入fromHtml(String),这些特殊字符就能还原成本来意义了。例如:

String escapedUsername = TextUtil.htmlEncode(username)
Resources res = getResources();
String text = String.format(res.getString(R.string.welcome_messages), escapedUsername,mailCount);
CharSequence styledText = Html.fromHtml(text);

 

以上参考:http://www.cnblogs.com/meiyitian/articles/2221742.html

 

另外,再附上测试了的一点代码:

        String inp = "http://10.50.74.222/TV/0/9?Token=9$10.63.253.198$123&amp;StartTime=1344002400&amp;EndTime=1344006000";
        
        try{
        	String text = Html.fromHtml(inp).toString();
                Log.d("aaa",text);//http://10.50.74.222/TV/0/9?Token=9$10.63.253.198$123&StartTime=1344002400&EndTime=1344006000

            
        }catch(Exception ex){
        	ex.printStackTrace();
        }

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。