http://liyixing1.iteye.com/blog/1180244
html特殊字符转换(java)
2010-07-28 14:05:01| 分类: web开发资料整理 | 标签: |字号大中小 订阅
/**
* 把文本编码为Html代码
* @param target
* @return 编码后的字符串
*/
public static String htmEncode(String target)
{
StringBuffer stringbuffer = new StringBuffer();
int j = target.length();
for (int i = 0; i < j; i++)
{
char c = target.charAt(i);
switch (c)
{
case 60:
stringbuffer.append("<");
break;
case 62:
stringbuffer.append(">");
break;
case 38:
stringbuffer.append("&");
break;
case 34:
stringbuffer.append(""");
break;
case 169:
stringbuffer.append("©");
break;
case 174:
stringbuffer.append("®");
break;
case 165:
stringbuffer.append("¥");
break;
case 8364:
stringbuffer.append("€");
break;
case 8482:
stringbuffer.append("™");
break;
case 13:
if (i < j - 1 && target.charAt(i + 1) == 10)
{
stringbuffer.append("<br>");
i++;
}
break;
case 32:
if (i < j - 1 && target.charAt(i + 1) == ' ')
{
stringbuffer.append(" ");
i++;
break;
}
default:
stringbuffer.append(c);
break;
}
}
return new String(stringbuffer.toString());
}
查找含有特殊字符的元素
HTML 代码:
<span id="foo:bar"></span>
<span id="foo[bar]"></span>
<span id="foo.bar"></span>
jQuery 代码:
$("#foo\\:bar")
$("#foo\\[bar\\]")
$("#foo\\.bar")
如果不使用转义,返回结果为undefinied.
查找含有特殊字符的元素
HTML 代码:
<span id="foo:bar"></span>
<span id="foo[bar]"></span>
<span id="foo.bar"></span>
jQuery 代码:
$("#foo\\:bar")
$("#foo\\[bar\\]")
$("#foo\\.bar")
如果不使用转义,返回结果为undefinied.
<div>
谷歌会稍微好一些,博客小子。
<span class="right">
其实百度是垃圾!!
</span>
</div>
原因:
当非float的元素和float的元素在一起的时候,如果非float元素在先,那么float的元素将被排斥
也就是说,你的span是float:right,但是你文本还是float:none
如果要让两者占据同一行,一般有两个解决方法:
第一种:把span先于文本显示
如:
<div>
<span class="right">
其实百度是垃圾!!
</span>
谷歌会稍微好一些,博客小子。
</div>
第二:把文本也设成float
如:
<div>
<span class="right">
其实百度是垃圾!!
</span>
<span class="left">
谷歌会稍微好一些,博客小子。
</span>
</div>
<error-page>
<exception-type>java.lang.NullPointException</exception-type>
<location>/error.jsp</location>
</error-page>
eclipse本来提供junit的运行和调试功能,但是在大型项目开发中往往,用ant来维护整个代码的编译,打包和测试。而在测试前往往会进行环境的配置,这些配置往往是由ant来完成,所以测试的入口也是从运行ant开始的,但是我们又想对某个junit的测试代码进行调试就不好处理了。
解决办法:在ant脚本中,对junit启动远程调试功能。
eclipse中有远程调试功能,可以对非同一个jvm中运行的java程序进行调试。相关的方法可见:http://www.ibm.com/developerworks/cn/opensource/os-eclipse-javadebug/
在ant中要使用相同方法,也不复杂。
假设要调试一个junit测试:
<JUnit printsummary="yes" fork="yes" dir=".">
<jvmarg line="-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=9002"/>
....
<batchtest>
<fileset dir="tests/src">
<include name="**/jaxrpc/TestUtils.java"/>
</fileset>
</batchtest>
</JUnit>
注意红色部分,此时这个junit启动了远程调试,当ant运行至此会打印waiting for vm to connect at port 9002...。此时新建一个远程调试连接到9002,在这个测试的对应java代码上打上断点,就能进行调试了。
同样的方法,所有支持<jvmarg >标签的任务都能这么来调试。