﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-圣克尔·光-Shingo</title><link>http://www.blogjava.net/shingo/</link><description>梦想与坚持......</description><language>zh-cn</language><lastBuildDate>Fri, 01 May 2026 10:25:07 GMT</lastBuildDate><pubDate>Fri, 01 May 2026 10:25:07 GMT</pubDate><ttl>60</ttl><item><title>CVS安装及CVS整合MyEclipse</title><link>http://www.blogjava.net/shingo/archive/2009/06/07/280392.html</link><dc:creator>圣克尔·光</dc:creator><author>圣克尔·光</author><pubDate>Sat, 06 Jun 2009 18:29:00 GMT</pubDate><guid>http://www.blogjava.net/shingo/archive/2009/06/07/280392.html</guid><wfw:comment>http://www.blogjava.net/shingo/comments/280392.html</wfw:comment><comments>http://www.blogjava.net/shingo/archive/2009/06/07/280392.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/shingo/comments/commentRss/280392.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/shingo/services/trackbacks/280392.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;<a href='http://www.blogjava.net/shingo/archive/2009/06/07/280392.html'>阅读全文</a><img src ="http://www.blogjava.net/shingo/aggbug/280392.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/shingo/" target="_blank">圣克尔·光</a> 2009-06-07 02:29 <a href="http://www.blogjava.net/shingo/archive/2009/06/07/280392.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SVN安装与配置 SVN整合MyEclipse</title><link>http://www.blogjava.net/shingo/archive/2009/06/07/280391.html</link><dc:creator>圣克尔·光</dc:creator><author>圣克尔·光</author><pubDate>Sat, 06 Jun 2009 18:27:00 GMT</pubDate><guid>http://www.blogjava.net/shingo/archive/2009/06/07/280391.html</guid><wfw:comment>http://www.blogjava.net/shingo/comments/280391.html</wfw:comment><comments>http://www.blogjava.net/shingo/archive/2009/06/07/280391.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/shingo/comments/commentRss/280391.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/shingo/services/trackbacks/280391.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;<a href='http://www.blogjava.net/shingo/archive/2009/06/07/280391.html'>阅读全文</a><img src ="http://www.blogjava.net/shingo/aggbug/280391.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/shingo/" target="_blank">圣克尔·光</a> 2009-06-07 02:27 <a href="http://www.blogjava.net/shingo/archive/2009/06/07/280391.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>StringUtils工具类的常用方法</title><link>http://www.blogjava.net/shingo/archive/2009/05/14/270523.html</link><dc:creator>圣克尔·光</dc:creator><author>圣克尔·光</author><pubDate>Wed, 13 May 2009 17:09:00 GMT</pubDate><guid>http://www.blogjava.net/shingo/archive/2009/05/14/270523.html</guid><wfw:comment>http://www.blogjava.net/shingo/comments/270523.html</wfw:comment><comments>http://www.blogjava.net/shingo/archive/2009/05/14/270523.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/shingo/comments/commentRss/270523.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/shingo/services/trackbacks/270523.html</trackback:ping><description><![CDATA[<p><span><span style="font-family: verdana,geneva">StringUtils</span> 方法的操作对象是 <span style="font-family: verdana,geneva">java.lang.String</span> 类型的对象，是 <span style="font-family: verdana,geneva">JDK</span> 提供的 <span style="font-family: verdana,geneva">String</span> 类型操作方法的补充，并且是 <span style="font-family: verdana,geneva">null</span> 安全的(即如果输入参数 <span style="font-family: verdana,geneva">String</span> 为 <span style="font-family: verdana,geneva">null</span> 则不会抛出&nbsp; <span style="font-family: verdana,geneva">NullPointerException</span> ，而是做了相应处理，例如，如果输入为 <span style="font-family: verdana,geneva">null</span> 则返回也是 <span style="font-family: verdana,geneva">null</span> 等，具体可以查看源代码)。<br />
<br />
除了构造器，<span style="font-family: verdana,geneva">StringUtils</span> 中一共有130多个方法，并且都是 <span style="font-family: verdana,geneva">static</span> 的，所以我们可以这样调用 <span style="font-family: verdana,geneva">StringUtils.xxx()</span> <br />
<br />
下面分别对一些常用方法做简要介绍：<br />
<br />
<span style="font-family: verdana,geneva">1. <span style="color: #0000ff">public static boolean isEmpty(String str)</span> </span><br />
&nbsp;&nbsp; 判断某字符串是否为空，为空的标准是 <span style="font-family: verdana,geneva">str==null</span> 或 <span style="font-family: verdana,geneva">str.length()==0</span> <br />
&nbsp;&nbsp; 下面是 <span style="font-family: verdana,geneva">StringUtils</span> 判断是否为空的示例：</span> </p>
<p style="padding-left: 30px"><span><span style="font-family: arial,helvetica,sans-serif"><span style="color: #800000">StringUtils.isEmpty(null) = true<br />
StringUtils.isEmpty("") = true</span> <br />
<span style="color: #800000">StringUtils.isEmpty(" ") = false</span> </span>//注意在 <span style="font-family: verdana,geneva">StringUtils</span> 中空格作非空处理<br />
<span style="font-family: arial,helvetica,sans-serif"><span style="color: #800000">StringUtils.isEmpty("&nbsp;&nbsp; ") = false<br />
StringUtils.isEmpty("bob") = false<br />
StringUtils.isEmpty(" bob ") = false</span> </span></span></p>
<p>&nbsp;</p>
<p><span><span style="font-family: verdana,geneva">2.<span style="color: #0000ff"> public static boolean isNotEmpty(String str)</span> </span><br />
&nbsp;&nbsp; 判断某字符串是否非空，等于 <span style="color: #0000ff; font-family: verdana,geneva">!isEmpty(String str)</span> <br />
&nbsp;&nbsp; 下面是示例：</span> </p>
<p><span><span style="color: #800000; font-family: arial,helvetica,sans-serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StringUtils.isNotEmpty(null) = false<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StringUtils.isNotEmpty("") = false<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StringUtils.isNotEmpty(" ") = true<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StringUtils.isNotEmpty("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ") = true<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StringUtils.isNotEmpty("bob") = true<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StringUtils.isNotEmpty(" bob ") = true</span> <br />
<br />
<span style="font-family: verdana,geneva">3. <span style="color: #0000ff">public static boolean isBlank(String str)</span> </span><br />
&nbsp;&nbsp; 判断某字符串是否为空或长度为0或由空白符<span style="font-family: verdana,geneva">(whitespace)</span> 构成<br />
&nbsp;&nbsp; 下面是示例：<br />
<span style="color: #800000; font-family: arial,helvetica,sans-serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StringUtils.isBlank(null) = true<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StringUtils.isBlank("") = true<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StringUtils.isBlank(" ") = true<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StringUtils.isBlank("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ") = true<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StringUtils.isBlank("\t \n \f \r") = true</span> &nbsp; //对于制表符、换行符、换页符和回车符</span> </p>
<p><span><span style="color: #800000; font-family: arial,helvetica,sans-serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StringUtils.isBlank()</span> &nbsp; //均识为空白符<br />
<span style="color: #800000; font-family: arial,helvetica,sans-serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StringUtils.isBlank("\b") = false</span> &nbsp; //"\b"为单词边界符<br />
<span style="color: #800000; font-family: arial,helvetica,sans-serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StringUtils.isBlank("bob") = false<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StringUtils.isBlank(" bob ") = false</span> <br />
<br />
<span style="font-family: verdana,geneva">4. <span style="color: #0000ff">public static boolean isNotBlank(String str)</span> </span><br />
&nbsp;&nbsp; 判断某字符串是否不为空且长度不为0且不由空白符<span style="font-family: verdana,geneva">(whitespace)</span> 构成，等于 <span style="font-family: verdana,geneva">!isBlank(String str)</span> <br />
&nbsp;&nbsp; 下面是示例：</span> </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.isNotBlank(null) = false<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.isNotBlank("") = false<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.isNotBlank(" ") = false<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.isNotBlank("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ") = false<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.isNotBlank("\t \n \f \r") = false<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.isNotBlank("\b") = true<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.isNotBlank("bob") = true<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.isNotBlank(" bob ") = true</span> <br />
<br />
<span style="font-family: verdana,geneva">5. <span style="color: #0000ff">public static String trim(String str)</span> </span><br />
&nbsp;&nbsp; 去掉字符串两端的控制符<span style="font-family: verdana,geneva">(control characters, char &lt;= 32)</span> , 如果输入为 <span style="font-family: verdana,geneva">null</span> 则返回<span style="font-family: verdana,geneva">null</span> <br />
&nbsp;&nbsp; 下面是示例：<br />
</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trim(null) = null<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trim("") = ""<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trim(" ") = ""<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trim("&nbsp; \b \t \n \f \r&nbsp;&nbsp;&nbsp; ") = ""<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trim("&nbsp;&nbsp;&nbsp;&nbsp; \n\tss&nbsp;&nbsp; \b") = "ss"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trim(" d&nbsp;&nbsp; d dd&nbsp;&nbsp;&nbsp;&nbsp; ") = "d&nbsp;&nbsp; d dd"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trim("dd&nbsp;&nbsp;&nbsp;&nbsp; ") = "dd"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trim("&nbsp;&nbsp;&nbsp;&nbsp; dd&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ") = "dd"</span> <br />
<br />
<span style="font-family: verdana,geneva">6. <span style="color: #0000ff">public static String trimToNull(String str)</span> </span><br />
&nbsp;&nbsp; 去掉字符串两端的控制符<span style="font-family: verdana,geneva">(control characters, char &lt;= 32)</span> ,如果变为 <span style="font-family: verdana,geneva">null</span> 或""，则返回 <span style="font-family: verdana,geneva">null</span> <br />
&nbsp;&nbsp; 下面是示例：<br />
</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trimToNull(null) = null<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trimToNull("") = null<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trimToNull(" ") = null<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trimToNull("&nbsp;&nbsp;&nbsp;&nbsp; \b \t \n \f \r&nbsp;&nbsp;&nbsp; ") = null<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trimToNull("&nbsp;&nbsp;&nbsp;&nbsp; \n\tss&nbsp;&nbsp; \b") = "ss"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trimToNull(" d&nbsp;&nbsp; d dd&nbsp;&nbsp;&nbsp;&nbsp; ") = "d&nbsp;&nbsp; d dd"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trimToNull("dd&nbsp;&nbsp;&nbsp;&nbsp; ") = "dd"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trimToNull("&nbsp;&nbsp;&nbsp;&nbsp; dd&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ") = "dd"</span> <br />
<br />
<span style="color: #0000ff; font-family: verdana,geneva"><span style="color: #000000">7.</span> public static String trimToEmpty(String str)</span> <br />
&nbsp;&nbsp; 去掉字符串两端的控制符<span style="font-family: verdana,geneva">(control characters, char &lt;= 32)</span> ,如果变为 <span style="font-family: verdana,geneva">null</span> 或 <span style="font-family: verdana,geneva">""</span> ，则返回<span style="font-family: verdana,geneva"> ""</span> <br />
&nbsp;&nbsp; 下面是示例：<br />
</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-size: small; font-family: arial,helvetica,sans-serif"><span style="color: #800000">StringUtils.trimToEmpty(null) = ""<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-size: small; font-family: arial,helvetica,sans-serif"><span style="color: #800000">StringUtils.trimToEmpty("") = ""<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-size: small; font-family: arial,helvetica,sans-serif"><span style="color: #800000">StringUtils.trimToEmpty(" ") = ""<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-size: small; font-family: arial,helvetica,sans-serif"><span style="color: #800000">StringUtils.trimToEmpty("&nbsp;&nbsp;&nbsp;&nbsp; \b \t \n \f \r&nbsp;&nbsp;&nbsp; ") = ""<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-size: small; font-family: arial,helvetica,sans-serif"><span style="color: #800000">StringUtils.trimToEmpty("&nbsp;&nbsp;&nbsp;&nbsp; \n\tss&nbsp;&nbsp; \b") = "ss"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-size: small; font-family: arial,helvetica,sans-serif"><span style="color: #800000">StringUtils.trimToEmpty(" d&nbsp;&nbsp; d dd&nbsp;&nbsp;&nbsp;&nbsp; ") = "d&nbsp;&nbsp; d dd"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-size: small; font-family: arial,helvetica,sans-serif"><span style="color: #800000">StringUtils.trimToEmpty("dd&nbsp;&nbsp;&nbsp;&nbsp; ") = "dd"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.trimToEmpty("&nbsp;&nbsp;&nbsp;&nbsp; dd&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ") = "dd"</span> <br />
<span style="font-family: verdana,geneva"><br />
8. <span style="color: #0000ff">public static String strip(String str)</span> </span><br />
&nbsp;&nbsp; 去掉字符串两端的空白符<span style="color: #0000ff; font-family: verdana,geneva">(whitespace)</span> ，如果输入为 <span style="font-family: verdana,geneva">null</span> 则返回 <span style="font-family: verdana,geneva">null</span> <br />
&nbsp;&nbsp; 下面是示例(注意和<span style="color: #0000ff; font-family: verdana,geneva"> trim()</span> 的区别)：<br />
</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.strip(null) = null<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.strip("") = ""<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.strip(" ") = ""<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.strip("&nbsp;&nbsp;&nbsp;&nbsp; \b \t \n \f \r&nbsp;&nbsp;&nbsp; ") = "\b"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.strip("&nbsp;&nbsp;&nbsp;&nbsp; \n\tss&nbsp;&nbsp; \b") = "ss&nbsp;&nbsp; \b"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.strip(" d&nbsp;&nbsp; d dd&nbsp;&nbsp;&nbsp;&nbsp; ") = "d&nbsp;&nbsp; d dd"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.strip("dd&nbsp;&nbsp;&nbsp;&nbsp; ") = "dd"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.strip("&nbsp;&nbsp;&nbsp;&nbsp; dd&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ") = "dd"</span> <br />
<br />
<span style="font-family: verdana,geneva">9. <span style="color: #0000ff">public static String stripToNull(String str)</span> </span><br />
&nbsp;&nbsp; 去掉字符串两端的空白符<span style="color: #0000ff; font-family: verdana,geneva">(whitespace)</span> ，如果变为 <span style="font-family: verdana,geneva">null</span> 或""，则返回<span style="font-family: verdana,geneva"> null</span> <br />
&nbsp;&nbsp; 下面是示例(注意和 <span style="color: #0000ff; font-family: verdana,geneva">trimToNull()</span> 的区别)：<br />
</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull(null) = null<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull("") = null<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull(" ") = null<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull("&nbsp;&nbsp;&nbsp;&nbsp; \b \t \n \f \r&nbsp;&nbsp;&nbsp; ") = "\b"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull("&nbsp;&nbsp;&nbsp;&nbsp; \n\tss&nbsp;&nbsp; \b") = "ss&nbsp;&nbsp; \b"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull(" d&nbsp;&nbsp; d dd&nbsp;&nbsp;&nbsp;&nbsp; ") = "d&nbsp;&nbsp; d dd"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull("dd&nbsp;&nbsp;&nbsp;&nbsp; ") = "dd"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull("&nbsp;&nbsp;&nbsp;&nbsp; dd&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ") = "dd"</span> <br />
<br />
<span style="font-family: verdana,geneva">10. <span style="color: #0000ff">public static String stripToEmpty(String str)</span> </span><br />
&nbsp;&nbsp;&nbsp; 去掉字符串两端的空白符<span style="color: #0000ff; font-family: verdana,geneva">(whitespace)</span> ，如果变为<span style="font-family: verdana,geneva"> null</span> 或<span style="font-family: verdana,geneva">""</span> ，则返回<span style="font-family: verdana,geneva">""</span> <br />
&nbsp;&nbsp;&nbsp; 下面是示例(注意和 <span style="font-family: verdana,geneva">trimToEmpty()</span> 的区别)：<br />
</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull(null) = ""<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull("") = ""<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull(" ") = ""<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull("&nbsp;&nbsp;&nbsp;&nbsp; \b \t \n \f \r&nbsp;&nbsp;&nbsp; ") = "\b"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull("&nbsp;&nbsp;&nbsp;&nbsp; \n\tss&nbsp;&nbsp; \b") = "ss&nbsp;&nbsp; \b"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull(" d&nbsp;&nbsp; d dd&nbsp;&nbsp;&nbsp;&nbsp; ") = "d&nbsp;&nbsp; d dd"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull("dd&nbsp;&nbsp;&nbsp;&nbsp; ") = "dd"<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.stripToNull("&nbsp;&nbsp;&nbsp;&nbsp; dd&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ") = "dd"</span> <br />
<br />
以下方法只介绍其功能，不再举例：<br />
<span style="font-family: verdana,geneva">11. <span style="color: #0000ff">public static String strip(String str, String stripChars)</span> </span><br />
&nbsp;&nbsp; 去掉 <span style="font-family: verdana,geneva">str</span> 两端的在 <span style="font-family: verdana,geneva">stripChars</span> 中的字符。<br />
&nbsp;&nbsp; 如果 <span style="font-family: verdana,geneva">str</span> 为 <span style="font-family: verdana,geneva">null</span> 或等于<span style="font-family: verdana,geneva">""</span> ，则返回它本身；<br />
&nbsp;&nbsp; 如果 <span style="font-family: verdana,geneva">stripChars</span> 为 <span style="font-family: verdana,geneva">null</span> 或<span style="font-family: verdana,geneva">""</span> ，则返回 <span style="font-family: verdana,geneva">strip(String str)</span> 。<br />
<br />
<span style="font-family: verdana,geneva">12. <span style="color: #0000ff">public static String stripStart(String str, String stripChars)</span> </span><br />
&nbsp;&nbsp;&nbsp; 和11相似，去掉<span style="font-family: verdana,geneva"> str</span> 前端的在 <span style="font-family: verdana,geneva">stripChars</span> 中的字符。<br />
<br />
<span style="font-family: verdana,geneva">13. <span style="color: #0000ff">public static String stripEnd(String str, String stripChars)</span> </span><br />
&nbsp;&nbsp;&nbsp; 和11相似，去掉 <span style="font-family: verdana,geneva">str </span>末端的在 <span style="font-family: verdana,geneva">stripChars</span> 中的字符。<br />
<br />
<span style="font-family: verdana,geneva">14. <span style="color: #0000ff">public static String[] stripAll(String[] strs)</span> </span><br />
&nbsp;&nbsp;&nbsp; 对字符串数组中的每个字符串进行 <span style="font-family: verdana,geneva">strip(String str)</span> ，然后返回。<br />
&nbsp;&nbsp;&nbsp; 如果 <span style="font-family: verdana,geneva">strs</span> 为 <span style="font-family: verdana,geneva">null</span> 或 <span style="font-family: verdana,geneva">strs</span> 长度为0，则返回 <span style="font-family: verdana,geneva">strs</span> 本身<br />
<br />
<span style="font-family: verdana,geneva">15. <span style="color: #0000ff">public static String[] stripAll(String[] strs, String stripChars)</span> </span><br />
&nbsp;&nbsp;&nbsp; 对字符串数组中的每个字符串进行 <span style="color: #0000ff; font-family: verdana,geneva">strip(String str, String stripChars)</span> ，然后返回。<br />
&nbsp;&nbsp;&nbsp; 如果 <span style="font-family: verdana,geneva">strs </span>为 <span style="font-family: verdana,geneva">null</span> 或 <span style="font-family: verdana,geneva">strs</span> 长度为0，则返回 <span style="font-family: verdana,geneva">strs</span> 本身<br />
<br />
<span style="font-family: verdana,geneva">16. <span style="color: #0000ff">public static boolean equals(String str1, String str2)</span> </span><br />
&nbsp;&nbsp;&nbsp; 比较两个字符串是否相等，如果两个均为空则也认为相等。<br />
<br />
<span style="font-family: verdana,geneva">17.<span style="color: #0000ff"> public static boolean equalsIgnoreCase(String str1, String str2)</span> </span><br />
&nbsp;&nbsp;&nbsp; 比较两个字符串是否相等，不区分大小写，如果两个均为空则也认为相等。<br />
<br />
<span style="color: #000000; font-family: verdana,geneva">18. <span style="color: #0000ff">public static int indexOf(String str, char searchChar)</span> </span><br />
&nbsp;&nbsp;&nbsp; 返回字符 searchChar 在字符串 <span style="font-family: verdana,geneva">str</span> 中第一次出现的位置。<br />
&nbsp;&nbsp;&nbsp; 如果 <span style="font-family: verdana,geneva">searchChar</span> 没有在 <span style="font-family: verdana,geneva">str</span> 中出现则返回-1，<br />
&nbsp;&nbsp;&nbsp; 如果 <span style="font-family: verdana,geneva">str</span> 为 <span style="font-family: verdana,geneva">null</span> 或 <span style="font-family: verdana,geneva">""</span> ，则也返回-1<br />
<br />
<span style="font-family: verdana,geneva">19. <span style="color: #0000ff">public static int indexOf(String str, char searchChar, int startPos)</span> </span><br />
&nbsp;&nbsp;&nbsp; 返回字符 <span style="font-family: verdana,geneva">searchChar</span> 从 <span style="font-family: verdana,geneva">startPos</span> 开始在字符串 <span style="font-family: verdana,geneva">str</span> 中第一次出现的位置。<br />
&nbsp;&nbsp;&nbsp; 如果从 <span style="font-family: verdana,geneva">startPos</span> 开始 <span style="font-family: verdana,geneva">searchChar</span> 没有在<span style="font-family: verdana,geneva"> str</span> 中出现则返回-1，<br />
&nbsp;&nbsp;&nbsp; 如果 <span style="font-family: verdana,geneva">str</span> 为 <span style="font-family: verdana,geneva">null</span> 或 <span style="font-family: verdana,geneva">""</span> ，则也返回-1<br />
<br />
<span style="font-family: verdana,geneva">20. <span style="color: #0000ff">public static int indexOf(String str, String searchStr)</span> </span><br />
&nbsp;&nbsp;&nbsp; 返回字符串 <span style="font-family: verdana,geneva">searchStr </span>在字符串 <span style="font-family: verdana,geneva">str</span> 中第一次出现的位置。<br />
&nbsp;&nbsp;&nbsp; 如果 <span style="font-family: verdana,geneva">str</span> 为 <span style="font-family: verdana,geneva">null</span> 或 <span style="font-family: verdana,geneva">searchStr</span> 为 <span style="font-family: verdana,geneva">null</span> 则返回-1，<br />
&nbsp;&nbsp;&nbsp; 如果 <span style="font-family: verdana,geneva">searchStr</span> 为 <span style="font-family: verdana,geneva">""</span> ,且<span style="font-family: verdana,geneva"> str </span>为不为 <span style="font-family: verdana,geneva">null</span> ，则返回0，<br />
&nbsp;&nbsp;&nbsp; 如果 <span style="font-family: verdana,geneva">searchStr</span> 不在<span style="font-family: verdana,geneva"> str</span> 中，则返回-1<br />
<br />
<span style="font-family: verdana,geneva">21. <span style="color: #0000ff">public static int ordinalIndexOf(String str, String searchStr, int ordinal)</span> </span><br />
&nbsp;&nbsp;&nbsp; 返回字符串 <span style="font-family: verdana,geneva">searchStr</span> 在字符串 <span style="font-family: verdana,geneva">str</span> 中第 <span style="font-family: verdana,geneva">ordinal</span> 次出现的位置。<br />
&nbsp;&nbsp;&nbsp; 如果 <span style="font-family: verdana,geneva">str=null</span> 或 <span style="font-family: verdana,geneva">searchStr=null</span> 或 <span style="font-family: verdana,geneva">ordinal&lt;=0</span> 则返回-1<br />
&nbsp;&nbsp;&nbsp; 举例(*代表任意字符串)：<br />
</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.ordinalIndexOf(null, *, *) = -1<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.ordinalIndexOf(*, null, *) = -1<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.ordinalIndexOf("", "", *) = 0<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.ordinalIndexOf("aabaabaa", "a", 1) = 0<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.ordinalIndexOf("aabaabaa", "a", 2) = 1<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.ordinalIndexOf("aabaabaa", "b", 1) = 2<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.ordinalIndexOf("aabaabaa", "b", 2) = 5<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.ordinalIndexOf("aabaabaa", "ab", 1) = 1<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.ordinalIndexOf("aabaabaa", "ab", 2) = 4<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.ordinalIndexOf("aabaabaa", "bc", 1) = -1<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.ordinalIndexOf("aabaabaa", "", 1) = 0<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.ordinalIndexOf("aabaabaa", "", 2) = 0</span> <br />
<br />
<span style="font-family: verdana,geneva">22. <span style="color: #0000ff">public static int indexOf(String str, String searchStr, int startPos)</span> </span><br />
&nbsp;&nbsp;&nbsp; 返回字符串 <span style="font-family: verdana,geneva">searchStr</span> 从 <span style="font-family: verdana,geneva">startPos</span> 开始在字符串 <span style="font-family: verdana,geneva">str</span> 中第一次出现的位置。<br />
&nbsp;&nbsp;&nbsp; 举例(*代表任意字符串)：<br />
</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.indexOf(null, *, *) = -1<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.indexOf(*, null, *) = -1<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.indexOf("", "", 0) = 0<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.indexOf("aabaabaa", "a", 0) = 0<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.indexOf("aabaabaa", "b", 0) = 2<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.indexOf("aabaabaa", "ab", 0) = 1<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.indexOf("aabaabaa", "b", 3) = 5<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.indexOf("aabaabaa", "b", 9) = -1<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.indexOf("aabaabaa", "b", -1) = 2<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.indexOf("aabaabaa", "", 2) = 2<br />
</span></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span><span style="color: #800000; font-family: arial,helvetica,sans-serif">StringUtils.indexOf("abc", "", 9) = 3</span> <br />
<span style="color: #000000; font-family: verdana,geneva"><br />
23. <span style="color: #0000ff">public static int lastIndexOf(String str, char searchChar)</span> </span><br />
&nbsp;&nbsp;&nbsp; 基本原理同18<br />
<br />
<span style="font-family: verdana,geneva">24. <span style="color: #0000ff">public static int lastIndexOf(String str, char searchChar, int startPos)</span> </span><br />
&nbsp;&nbsp;&nbsp; 基本原理同19<br />
<br />
<span style="font-family: verdana,geneva">25. <span style="color: #0000ff">public static int lastIndexOf(String str, String searchStr)</span> </span><br />
&nbsp;&nbsp;&nbsp; 基本原理同20<br />
<br />
<span style="font-family: verdana,geneva">26. <span style="color: #0000ff">public static int lastIndexOf(String str, String searchStr, int startPos)</span> </span><br />
&nbsp;&nbsp;&nbsp; 基本原理同22<br />
<br />
另附：<br />
<br />
<span style="font-family: verdana,geneva">String</span> 的 <span style="font-family: verdana,geneva">split(String regex)</span> &nbsp; 方法的用法<br />
如果我们需要把某个字符串拆分为字符串数组，则通常用<span style="font-family: verdana,geneva"> split(String regex)</span> 来实现。<br />
<br />
例如：<br />
</span></p>
<div class="dp-highlighter">
<div class="bar">
<div class="tools">Java代码 <a title="复制代码" onclick="dp.sh.Toolbar.CopyToClipboard(this);return false;" href="http://janwer.javaeye.com/blog/148313#"><img alt="复制代码" src="http://janwer.javaeye.com/images/icon_copy.gif" /></a></div>
</div>
<ol class="dp-j">
    <li><span><span>String&nbsp;str&nbsp;=&nbsp;</span><span class="string">"aa,bb,cc,dd"</span><span>;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></span></li>
    <li><span>String[]&nbsp;strArray&nbsp;=&nbsp;str.split(</span><span class="string">","</span><span>);&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></span></li>
    <li><span>System.out.println(strArray.length);&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;</span><span class="keyword">for</span><span>&nbsp;(</span><span class="keyword">int</span><span>&nbsp;i&nbsp;=&nbsp;</span><span class="number">0</span><span>;&nbsp;i&nbsp;&lt;&nbsp;strArray.length;&nbsp;i++)&nbsp;{&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(strArray[i]);&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li><span>}&nbsp;&nbsp;</span></li>
</ol>
</div>
<pre class="java" style="display: none" name="code">String str = "aa,bb,cc,dd";
String[] strArray = str.split(",");
System.out.println(strArray.length);
for (int i = 0; i &lt; strArray.length; i++) {
System.out.println(strArray[i]);
}</pre>
&nbsp;
<p><span>结果为：<br />
<span style="font-family: verdana,geneva">4<br />
aa<br />
bb<br />
cc<br />
dd</span> <br />
<br />
如果，<br />
<span style="font-family: verdana,geneva">String str = "aa.bb.cc.dd";<br />
String[] strArray = str.split(".");</span> <br />
<br />
则结果为：0<br />
<br />
为什么结果不是我们所想的呢，原因是参数<span style="font-family: verdana,geneva"> String regex</span> 是正则表达式 <span style="font-family: verdana,geneva">(regular expression)</span> 而不是普通字符串，而 <span style="font-family: verdana,geneva">"."</span> 在正则表达式中有特殊含义，表示匹配所有单个字符。如果要那样拆分，我们必须给 <span style="font-family: verdana,geneva">"."</span> 进行转义，<span style="font-family: verdana,geneva">String[] strArray = str.split(".")</span> 修改为 <span style="font-family: verdana,geneva">String[] strArray = str.split("\\.")</span> 即可。<br />
</span><span>另外有关<span style="font-family: verdana,geneva"> StringUtils</span> 的详细 <span style="font-family: verdana,geneva">API</span> 请参见官方网站<span style="font-family: arial,helvetica,sans-serif">:</span> <span style="font-family: arial,helvetica,sans-serif"><a href="http://commons.apache.org/lang/api/org/apache/commons/lang/StringUtils.html" target="_blank">http://commons.apache.org/lang/api/org/apache/commons/lang/StringUtils.html</a></span></span></p>
<img src ="http://www.blogjava.net/shingo/aggbug/270523.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/shingo/" target="_blank">圣克尔·光</a> 2009-05-14 01:09 <a href="http://www.blogjava.net/shingo/archive/2009/05/14/270523.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSTL fmt 标签 使用</title><link>http://www.blogjava.net/shingo/archive/2009/05/14/270522.html</link><dc:creator>圣克尔·光</dc:creator><author>圣克尔·光</author><pubDate>Wed, 13 May 2009 17:03:00 GMT</pubDate><guid>http://www.blogjava.net/shingo/archive/2009/05/14/270522.html</guid><wfw:comment>http://www.blogjava.net/shingo/comments/270522.html</wfw:comment><comments>http://www.blogjava.net/shingo/archive/2009/05/14/270522.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/shingo/comments/commentRss/270522.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/shingo/services/trackbacks/270522.html</trackback:ping><description><![CDATA[<div class="postbody">
<p><font face="Verdana">所有标签：</font></p>
<p><font face="Verdana">Tags&nbsp;&nbsp; <br />
fmt:requestEncoding <br />
fmt:setLocale <br />
fmt:timeZone <br />
fmt:setTimeZone <br />
fmt:bundle <br />
fmt:setBundle <br />
fmt:message <br />
fmt:param <br />
fmt:formatNumber <br />
fmt:parseNumber <br />
fmt:formatDate <br />
fmt:parseDate&nbsp; <br />
</p>
<p>&lt;%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %&gt;</p>
<p>jstl fmt 函数大全</p>
<p>主要功能格式化</p>
<p>日期格式<em><font color="#ff0000">(2008年5月5日22点00分23秒)</font></em></p>
<p>&lt;fmt:formatDate value="&lt;%=new Date() %&gt;" pattern="yyyy年MM月dd日HH点mm分ss秒" /&gt;</p>
<p>保留两位小数</p>
<p>&lt;fmt:formatNumber value="123.123456789" pattern="0.00"/&gt;</p>
<p>格式数字<font color="#ff0000"><em>(<font color="#ff0000">45,678.234</font>)</em></font></p>
<p>&lt;fmt:formatNumber type="number" value="45678.2345" /&gt;</p>
<p>格式百分比<font color="#ff0000"><em>(23%)</em></font><br />
&lt;fmt:formatNumber type="percent" value="0.2345" /&gt;</p>
<p>&nbsp;</p>
<p>其他</p>
<p>&lt;fmt:bundle&gt;：资源绑定。除了以前提到过的在web.xml中声明以外，还可以利用此标签。</p>
<p>例&lt;fmt:bundle basename="message"&gt;&lt;/fmt:bundle&gt;</p>
<p>&lt;fmt:setLocale&gt;：设置locale，主要是用于这种情况，一个中国人在国外，locale是en_US，但想用中文显示。</p>
<p>例：&lt;fmt:setLocal value="zh_CN"/&gt;</p>
<p>&lt;fmt:message&gt;：输出properties文件中的指定内容。</p>
<p>例&lt;fmt:message key="user"/&gt;</p>
<p>&lt;fmt:formatNumber type="number"&gt;格式化普通数字<br />
&lt;fmt:formatNumber type="percent"&gt;格式化百分比</p>
<p>三种数字类型参数：currency,number,percent</p>
<p>&lt;fmt:parseNumber var="i" type="number" value="45678.2345" /&gt;<br />
&lt;c:out value="${i}" escapeXml="false" /&gt; 分析出数字</p>
<p>&lt;fmt:requestEncoding value="GB18030"/&gt; 格式化文本编码</p>
<p>&lt;fmt:formatDate value="${date}" type="both" timeStyle="long" dateStyle="long" /&gt;<br />
type="both" 输入日期也同时输出具体时间<br />
timeStyle="long" 时间以&#8220;长&#8221;格式输出 差别：下午02时06分59秒 与 14:06:59 <br />
dateStyle="long" 日期以&#8220;长&#8221;格式输出 差别：2006年9月7日 与 2006-9-7</p>
<p>四种长短参数：long,short,medium,full</p>
<p>&lt;fmt:timeZone value="${timezone}"/&gt; 时区偏移，与上面可配合使用：<br />
&lt;fmt:formatDate value="${d}" timeZone="${zn}" type="both" /&gt;</p>
<p>&lt;fmt:parseDate var="i" type="date" value="2006-12-11" /&gt;<br />
&lt;c:out value="${i}" escapeXml="false" /&gt; 分析出时间</p>
</font></div>
 <img src ="http://www.blogjava.net/shingo/aggbug/270522.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/shingo/" target="_blank">圣克尔·光</a> 2009-05-14 01:03 <a href="http://www.blogjava.net/shingo/archive/2009/05/14/270522.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>jstl fn函数</title><link>http://www.blogjava.net/shingo/archive/2009/05/14/270521.html</link><dc:creator>圣克尔·光</dc:creator><author>圣克尔·光</author><pubDate>Wed, 13 May 2009 16:58:00 GMT</pubDate><guid>http://www.blogjava.net/shingo/archive/2009/05/14/270521.html</guid><wfw:comment>http://www.blogjava.net/shingo/comments/270521.html</wfw:comment><comments>http://www.blogjava.net/shingo/archive/2009/05/14/270521.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/shingo/comments/commentRss/270521.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/shingo/services/trackbacks/270521.html</trackback:ping><description><![CDATA[JSTL使用表达式来简化页面的代码，这对一些标准的方法，例如bean的getter/setter方法，请求参数或者context以及session中的数据的访问非常方便，但是我们在实际应用中经常需要在页面调用对象的某些方法，例如我需要调用字符串的length方法来获取字符串的长度时，在以往的开发过程中我们必须把对象先转为String类，然后在调用其length方法，这样的代码繁琐而且容易出错。
<p>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> 因此JSTL内置了几个用于字符串操作的方法，可以直接在表达式中使用，大大的简化了代码，提供代码的可读性。在JSTL的表达是中要使用一个函数，其格式如下</p>
<p><strong><font color="#0000ff">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> ${ns:methodName(args....)}</font></strong></p>
<p>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> 在使用这些函数之前必须在JSP中引入标准函数的声明</p>
<p><strong><font color="#cc6633">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> &lt;%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %&gt;</font></strong></p>
<p>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> 下面是JSTL中自带的方法列表以及其描述</p>
<p>&nbsp;<wbr></p>
<table cellspacing="0" cellpadding="0" border="1">
    <tbody>
        <tr bgcolor="#cccccc">
            <td align="center"><font size="2"><strong>函数名</strong></font></td>
            <td align="center"><font size="2"><strong>函数说明</strong></font></td>
            <td align="center"><font size="2"><strong>使用举例</strong></font></td>
        </tr>
        <tr>
            <td><font size="2">fn:contains</font></td>
            <td><font size="2">判断字符串是否包含另外一个字符串</font></td>
            <td><font size="2">&lt;c:if test="${fn:contains(name, searchString)}"&gt;</font></td>
        </tr>
        <tr bgcolor="#e8f0fc">
            <td><font size="2">fn:containsIgnoreCase</font></td>
            <td><font size="2">判断字符串是否包含另外一个字符串(大小写无关)</font></td>
            <td><font size="2">&lt;c:if test="${fn:containsIgnoreCase(name, searchString)}"&gt;</font></td>
        </tr>
        <tr>
            <td><font size="2">fn:endsWith</font></td>
            <td><font size="2">判断字符串是否以另外字符串结束</font></td>
            <td><font size="2">&lt;c:if test="${fn:endsWith(filename, ".txt")}"&gt;</font></td>
        </tr>
        <tr bgcolor="#e8f0fc">
            <td><font size="2">fn:escapeXml</font></td>
            <td><font size="2">把一些字符转成XML表示，例如&lt;字符应该转为&amp;lt;</font></td>
            <td><font size="2">${fn:escapeXml(param:info)}</font></td>
        </tr>
        <tr>
            <td><font size="2">fn:indexOf</font></td>
            <td><font size="2">子字符串在母字符串中出现的位置</font></td>
            <td><font size="2">${fn:indexOf(name, "-")}</font></td>
        </tr>
        <tr bgcolor="#e8f0fc">
            <td><font size="2">fn:join</font></td>
            <td><font size="2">将数组中的数据联合成一个新字符串，并使用指定字符格开</font></td>
            <td><font size="2">${fn:join(array, ";")}</font></td>
        </tr>
        <tr>
            <td><font size="2">fn:length</font></td>
            <td><font size="2">获取字符串的长度，或者数组的大小</font></td>
            <td><font size="2">${fn:length(shoppingCart.products)}</font></td>
        </tr>
        <tr bgcolor="#e8f0fc">
            <td><font size="2">fn:replace</font></td>
            <td><font size="2">替换字符串中指定的字符</font></td>
            <td><font size="2">${fn:replace(text, "-", "&#149;")}</font></td>
        </tr>
        <tr>
            <td><font size="2">fn:split</font></td>
            <td><font size="2">把字符串按照指定字符切分</font></td>
            <td><font size="2">${fn:split(customerNames, ";")}</font></td>
        </tr>
        <tr bgcolor="#e8f0fc">
            <td><font size="2">fn:startsWith</font></td>
            <td><font size="2">判断字符串是否以某个子串开始</font></td>
            <td><font size="2">&lt;c:if test="${fn:startsWith(product.id, "100-")}"&gt;</font></td>
        </tr>
        <tr>
            <td><font size="2">fn:substring</font></td>
            <td><font size="2">获取子串</font></td>
            <td><font size="2">${fn:substring(zip, 6, -1)}</font></td>
        </tr>
        <tr bgcolor="#e8f0fc">
            <td><font size="2">fn:substringAfter</font></td>
            <td>
            <p><font size="2">获取从某个字符所在位置开始的子串</font></p>
            </td>
            <td><font size="2">${fn:substringAfter(zip, "-")}</font></td>
        </tr>
        <tr>
            <td><font size="2">fn:substringBefore</font></td>
            <td><font size="2">获取从开始到某个字符所在位置的子串</font></td>
            <td><font size="2">${fn:substringBefore(zip, "-")}</font></td>
        </tr>
        <tr bgcolor="#e8f0fc">
            <td><font size="2">fn:toLowerCase</font></td>
            <td><font size="2">转为小写</font></td>
            <td><font size="2">${fn.toLowerCase(product.name)}</font></td>
        </tr>
        <tr>
            <td><font size="2">fn:toUpperCase</font></td>
            <td><font size="2">转为大写字符</font></td>
            <td><font size="2">${fn.UpperCase(product.name)}</font></td>
        </tr>
        <tr bgcolor="#e8f0fc">
            <td><font size="2">fn:trim</font></td>
            <td><font size="2">去除字符串前后的空格</font></td>
            <td><font size="2">${fn.trim(name)}</font></td>
        </tr>
    </tbody>
</table>
<p>&nbsp;<wbr></p>
<p>&nbsp;<wbr></p>
<table cellspacing="0" cellpadding="4" align="center" border="1">
    <tbody>
        <tr>
            <td height="24">
            <p align="center">函数</p>
            </td>
            <td>
            <p align="center">描述</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:contains(string, substring)</p>
            </td>
            <td>
            <p>如果参数string中包含参数substring，返回true</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:containsIgnoreCase(string, substring)</p>
            </td>
            <td>
            <p>如果参数string中包含参数substring（忽略大小写），返回true</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:endsWith(string, suffix)</p>
            </td>
            <td>
            <p>如果参数 string 以参数suffix结尾，返回true</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:escapeXml(string)</p>
            </td>
            <td>
            <p>将有特殊意义的XML (和HTML)转换为对应的XML character entity code，并返回</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:indexOf(string, substring)</p>
            </td>
            <td>
            <p>返回参数substring在参数string中第一次出现的位置</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:join(array, separator)</p>
            </td>
            <td>
            <p>将一个给定的数组array用给定的间隔符separator串在一起，组成一个新的字符串并返回。</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:length(item)</p>
            </td>
            <td>
            <p>返回参数item中包含元素的数量。参数Item类型是数组、collection或者String。如果是String类型,返回值是String中的字符数。</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:replace(string, before, after)</p>
            </td>
            <td valign="top">
            <p>返回一个String对象。用参数after字符串替换参数string中所有出现参数before字符串的地方，并返回替换后的结果</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:split(string, separator)</p>
            </td>
            <td>
            <p>返回一个数组，以参数separator 为分割符分割参数string，分割后的每一部分就是数组的一个元素</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:startsWith(string, prefix)</p>
            </td>
            <td>
            <p>如果参数string以参数prefix开头，返回true</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:substring(string, begin, end)</p>
            </td>
            <td>
            <p>返回参数string部分字符串, 从参数begin开始到参数end位置，包括end位置的字符</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:substringAfter(string, substring)</p>
            </td>
            <td>
            <p>返回参数substring在参数string中后面的那一部分字符串</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:substringBefore(string, substring)</p>
            </td>
            <td>
            <p>返回参数substring在参数string中前面的那一部分字符串</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:toLowerCase(string)</p>
            </td>
            <td>
            <p>将参数string所有的字符变为小写，并将其返回</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:toUpperCase(string)</p>
            </td>
            <td>
            <p>将参数string所有的字符变为大写，并将其返回</p>
            </td>
        </tr>
        <tr>
            <td valign="top" height="24">
            <p>fn:trim(string)</p>
            </td>
            <td>
            <p>去除参数string 首尾的空格，并将其返回</p>
            </td>
        </tr>
    </tbody>
</table>
<p>&nbsp;<wbr></p>
 <img src ="http://www.blogjava.net/shingo/aggbug/270521.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/shingo/" target="_blank">圣克尔·光</a> 2009-05-14 00:58 <a href="http://www.blogjava.net/shingo/archive/2009/05/14/270521.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一个最简单的装饰模式</title><link>http://www.blogjava.net/shingo/archive/2009/04/01/263377.html</link><dc:creator>圣克尔·光</dc:creator><author>圣克尔·光</author><pubDate>Wed, 01 Apr 2009 07:32:00 GMT</pubDate><guid>http://www.blogjava.net/shingo/archive/2009/04/01/263377.html</guid><wfw:comment>http://www.blogjava.net/shingo/comments/263377.html</wfw:comment><comments>http://www.blogjava.net/shingo/archive/2009/04/01/263377.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/shingo/comments/commentRss/263377.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/shingo/services/trackbacks/263377.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;<a href='http://www.blogjava.net/shingo/archive/2009/04/01/263377.html'>阅读全文</a><img src ="http://www.blogjava.net/shingo/aggbug/263377.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/shingo/" target="_blank">圣克尔·光</a> 2009-04-01 15:32 <a href="http://www.blogjava.net/shingo/archive/2009/04/01/263377.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Java.util里面List 数列和排序</title><link>http://www.blogjava.net/shingo/archive/2009/04/01/263374.html</link><dc:creator>圣克尔·光</dc:creator><author>圣克尔·光</author><pubDate>Wed, 01 Apr 2009 07:29:00 GMT</pubDate><guid>http://www.blogjava.net/shingo/archive/2009/04/01/263374.html</guid><wfw:comment>http://www.blogjava.net/shingo/comments/263374.html</wfw:comment><comments>http://www.blogjava.net/shingo/archive/2009/04/01/263374.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/shingo/comments/commentRss/263374.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/shingo/services/trackbacks/263374.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;<a href='http://www.blogjava.net/shingo/archive/2009/04/01/263374.html'>阅读全文</a><img src ="http://www.blogjava.net/shingo/aggbug/263374.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/shingo/" target="_blank">圣克尔·光</a> 2009-04-01 15:29 <a href="http://www.blogjava.net/shingo/archive/2009/04/01/263374.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>由Java中的Set，List，Map引出的排序技巧</title><link>http://www.blogjava.net/shingo/archive/2009/03/31/263190.html</link><dc:creator>圣克尔·光</dc:creator><author>圣克尔·光</author><pubDate>Tue, 31 Mar 2009 09:32:00 GMT</pubDate><guid>http://www.blogjava.net/shingo/archive/2009/03/31/263190.html</guid><wfw:comment>http://www.blogjava.net/shingo/comments/263190.html</wfw:comment><comments>http://www.blogjava.net/shingo/archive/2009/03/31/263190.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/shingo/comments/commentRss/263190.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/shingo/services/trackbacks/263190.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;<a href='http://www.blogjava.net/shingo/archive/2009/03/31/263190.html'>阅读全文</a><img src ="http://www.blogjava.net/shingo/aggbug/263190.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/shingo/" target="_blank">圣克尔·光</a> 2009-03-31 17:32 <a href="http://www.blogjava.net/shingo/archive/2009/03/31/263190.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>开源框架开发的错误总结2</title><link>http://www.blogjava.net/shingo/archive/2009/03/28/262629.html</link><dc:creator>圣克尔·光</dc:creator><author>圣克尔·光</author><pubDate>Sat, 28 Mar 2009 08:46:00 GMT</pubDate><guid>http://www.blogjava.net/shingo/archive/2009/03/28/262629.html</guid><wfw:comment>http://www.blogjava.net/shingo/comments/262629.html</wfw:comment><comments>http://www.blogjava.net/shingo/archive/2009/03/28/262629.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/shingo/comments/commentRss/262629.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/shingo/services/trackbacks/262629.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;<a href='http://www.blogjava.net/shingo/archive/2009/03/28/262629.html'>阅读全文</a><img src ="http://www.blogjava.net/shingo/aggbug/262629.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/shingo/" target="_blank">圣克尔·光</a> 2009-03-28 16:46 <a href="http://www.blogjava.net/shingo/archive/2009/03/28/262629.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【JavaScript】JS鼠标事件大全(转)</title><link>http://www.blogjava.net/shingo/archive/2009/03/15/259881.html</link><dc:creator>圣克尔·光</dc:creator><author>圣克尔·光</author><pubDate>Sun, 15 Mar 2009 13:47:00 GMT</pubDate><guid>http://www.blogjava.net/shingo/archive/2009/03/15/259881.html</guid><wfw:comment>http://www.blogjava.net/shingo/comments/259881.html</wfw:comment><comments>http://www.blogjava.net/shingo/archive/2009/03/15/259881.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/shingo/comments/commentRss/259881.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/shingo/services/trackbacks/259881.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;<a href='http://www.blogjava.net/shingo/archive/2009/03/15/259881.html'>阅读全文</a><img src ="http://www.blogjava.net/shingo/aggbug/259881.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/shingo/" target="_blank">圣克尔·光</a> 2009-03-15 21:47 <a href="http://www.blogjava.net/shingo/archive/2009/03/15/259881.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>