fmt:formatDate是将后台传来的date转换为字符串。
属性 | 描述 | 是否必要 | 默认值 |
---|---|---|---|
value | 要显示的日期 | 是 | 无 |
type | DATE, TIME, 或 BOTH | 否 | date |
dateStyle | FULL, LONG, MEDIUM, SHORT, 或 DEFAULT | 否 | default |
timeStyle | FULL, LONG, MEDIUM, SHORT, 或 DEFAULT | 否 | default |
pattern | 自定义格式模式 | 否 | 无 |
timeZone | 显示日期的时区 | 否 | 默认时区 |
var | 存储格式化日期的变量名 | 否 | 显示在页面 |
scope | 存储格式化日志变量的范围 | 否 | 页面 |
fmt:formatDate 示例:
<c:set var="nowDate" value="<%=new java.util.Date() %>"/>
格式化结果-time: <fmt:formatDate type="time" value="${nowDate }"/> <br/>
格式化结果-date: <fmt:formatDate type="date" value="${nowDate }"/> <br/>
格式化结果-both: <fmt:formatDate type="both" value="${nowDate }"/> <br/>
格式化结果-pattern: <fmt:formatDate pattern="yyyy-MM-dd HH:mm:ss" value="${nowDate }"/>
格式化结果-time:16:02:12 格式化结果-date:2019-12-10 格式化结果-both:2019-12-10 16:02:12 格式化结果-pattern:2019-12-10 16:02:12 |
fmt:parseDate是将字符串转换为date。
属性 | 描述 | 是否必要 | 默认值 |
---|---|---|---|
value | 要显示的日期 | 是 | 无 |
type | DATE, TIME, 或 BOTH | 否 | date |
dateStyle | FULL, LONG, MEDIUM, SHORT, 或 DEFAULT | 否 | default |
timeStyle | FULL, LONG, MEDIUM, SHORT, 或 DEFAULT | 否 | default |
pattern | 自定义格式模式 | 否 | 无 |
timeZone | 显示日期的时区 | 否 | 默认时区 |
var | 存储格式化日期的变量名 | 否 | 显示在页面 |
scope | 存储格式化日志变量的范围 | 否 | 页面 |
fmt:parseDate示例:
<c:set var="textDate" value="2019-08-09"/>
<c:set var="textTime" value="12:28:32"/>
<c:set var="textBoth" value="2019-08-09 12:38:32"/>
格式化结果-date:<fmt:parseDate type="date" value="${textDate }"/> <br/>
格式化结果-time:<fmt:parseDate type="time" value="${textTime }"/> <br/>
格式化结果-both:<fmt:parseDate type="both" value="${textBoth }"/> <br/>
格式化结果-date:Fri Aug 09 00:00:00 CST 2019 格式化结果-time:Thu Jan 01 12:28:32 CST 1970 格式化结果-both:Fri Aug 09 12:38:32 CST 2019 |
如果用fmt:parseDate解析date格式的话,会报错:
java.text.ParseException: Unparseable date: ""
同样的,如果用fmt:formatDate解析字符串的话,也会报错:
Cannot convert ... of type class java.lang.String to class java.util.Date
所以在使用时要注意好要解析的格式。