如何在JSTL中显示格式化的日历类型?

时间:2010-05-17 12:14:58

标签: java jsp jstl

我在Java中使用Calendar类型,我想在JSTL中显示格式化日期。

我在尝试:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<fmt:parseDate var="date" type="date" dateStyle="short" value="${photo.dateCreated}" />
<c:out value="${data}" />

但它不起作用:

  

java.text.ParseException:Unparseable date

JSTL格式Calendar可以输入吗?

1 个答案:

答案 0 :(得分:26)

不,它只能格式化java.util.Date类型,因为它在引擎盖下使用DateFormat#format()。使用Calendar#getTime()Calendar抓取它。

<fmt:formatDate value="${photo.dateCreated.time}" type="date" dateStyle="short" />

请注意,您需要fmt:formatDate,而不是fmt:parseDate。格式化是将Date对象转换为人类可读日期字符串,解析是将人类可读日期字符串转换为Date对象。