在JSP页面中,我必须显示一些日期,但是没有一种可用的日期格式(短,中或长)适合我。
<fmt:formatDate value="${someDate}" type="date" dateStyle="short"/>
<fmt:formatDate value="${someDate}" type="date" dateStyle="medium"/>
<fmt:formatDate value="${someDate}" type="date" dateStyle="long"/>
我必须诉诸指定的模式:
<fmt:formatDate value="${someDate}" type="date" pattern="dd-MM/yyyy"/>
但是,模式本身是依赖于语言环境的,我的意思是,我想从消息束中加载模式。我该怎么办?
我尝试过
<fmt:formatDate value="${someDate}" type="date" pattern="<fmt:message key='date.format.short'/>"/>
但它不起作用。
答案 0 :(得分:2)
您可以使用<c:set>
标记来存储模式的值。
这样的事情会做你想要的:
<c:set var="myPattern"><fmt:message key="date.format.short" /></c:set>
<fmt:formatDate value="${someDate}" type="date" pattern="${myPattern}" />
或者更好,如@Sachin所指出的,使用var
属性:
<fmt:message key="date.format.short" var="${myPattern}"/>
<fmt:formatDate value="${someDate}" type="date" pattern="${myPattern}" />