在jsp中将字符串转换为日期格式

时间:2013-09-16 13:32:40

标签: java jsp date date-formatting

我正在尝试转换以日期格式(即2013-12-14 10:00:00.0)格式化的字符串对象,并将其传递给jsp,转换为另一种日期格式(即jsp上的12/14/13 10:00:00 AM。我尝试了以下几行代码尝试将字符串“date”(恰好是某种日期格式)解析为实际的日期格式:

<fmt:parseDate value="${row.date}" type="date" pattern="yyyy-MM-dd hh:mm:ss.S" var="formatedDate"/>   
<td class="dataField"><fmt:formatDate value="${formatedDate}"  type="date" pattern="MM/dd/yy hh:mm:ss a"/></td>

但我在我的控制台中遇到以下异常:

  

16:14:01,265 ERROR [[springapp]] servlet的Servlet.service()   springapp抛出异常java.text.ParseException:Unparseable date:   “2013-12-14 10:00:00.0”           在java.text.DateFormat.parse(DateFormat.java:337)

有没有人更清楚为什么这不起作用?

2 个答案:

答案 0 :(得分:2)

问题在于你的时间:10:00:00.0 你还有几毫秒。要解析此类日期,您应将模式更改为yyyy-MM-dd hh:mm:ss.S

更多阅读here

答案 1 :(得分:1)

我尝试了相同的代码,问题出在格式日期,您应该使用HH而不是hh

<fmt:parseDate value="${row.date}" type="date" pattern="yyyy-MM-dd HH:mm:ss.S" var="formatedDate"/>
<td class="dataField"><fmt:formatDate value="${formatedDate}"  type="date" pattern="MM/dd/yy hh:mm:ss a"/></td>