JSTL fmt 格式化时间

Posted ㄓㄤㄑㄧㄤ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSTL fmt 格式化时间相关的知识,希望对你有一定的参考价值。

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
     <head>
       <title>My JSP ‘fmt.jsp‘ starting page</title>
     </head>
  
     <body>
      <c:set var="salary" value="3540.2301"/>
      <c:set var="total" value="56225.2301"/>
      <fmt:setLocale value="en_US"/>
      currency:<fmt:formatNumber value="${salary}" type="currency" currencyCode="USD"/><br>
      percent:<fmt:formatNumber value="${salary/total}" type="percent" maxFractionDigits="4"/><br>
      <hr>
      <jsp:useBean id="now" class="java.util.Date"></jsp:useBean>
      <fmt:setLocale value="zh_CN"/>
      full--><fmt:formatDate value="${now}" type="both" dateStyle="full" timeStyle="full"/><br>
      long--><fmt:formatDate value="${now}" type="both" dateStyle="long" timeStyle="long"/><br>
      medium--><fmt:formatDate value="${now}" type="both" dateStyle="medium" timeStyle="medium"/><br>
      default--><fmt:formatDate value="${now}" type="both" dateStyle="default" timeStyle="default"/><br>
      short--><fmt:formatDate value="${now}" type="both" dateStyle="short" timeStyle="short"/><br>
     </body>
</html>

今天是:<fmt:formatDate value="${now}" pattern="G yyyy年MM月dd日 E"/><br>
现在是:<fmt:formatDate value="${now}" pattern="a HH:mm:ss.S z"/>
结果:
今天是:公元 2007年10月19日 星期五
现在是:下午 20:04:11.484 CST

<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt" %>

<fmt:parseDate value="${param.date}" var="date" pattern="yyyy/MM/dd:HH:mm:ss>
<fmt:parseDate value="${param.isoDate}" var="isoDate" pattern="yyyyMMdd‘T‘HHmmss">

The input parameters must match the patterns, or the JSP will thrown an exception. This page does no error handling. 

Input parameters:
Date: 2004/04/01:13:30:00 Java format: Thu Apr 01 13:30:00 CST 2004
isoDate: 20040531T235959 Java format: Mon May 31 23:59:59 CDT 2004

Dates
Tag Output 
Attribute: value; required. Tag has no body. 
<fmt:formatDate value="${date}" type="both"/>

2004-4-1 13:30:00 
<fmt:formatDate value="${isoDate}" type="both"/>

2004-5-31 23:59:59 
Attribute: type; optional. Indicates what to print: date, time, or both. 
<fmt:formatDate value="${date}" type="date"/>

2004-4-1 
<fmt:formatDate value="${isoDate}" type="time"/>

23:59:59 
Attribute: dateStyle; optional. Varies the date format. 
<fmt:formatDate value="${isoDate}" type="date" dateStyle="default"/>

2004-5-31 
<fmt:formatDate value="${isoDate}" type="date" dateStyle="short"/>

04-5-31 
<fmt:formatDate value="${isoDate}" type="date" dateStyle="medium"/>

2004-5-31 
<fmt:formatDate value="${isoDate}" type="date" dateStyle="long"/>

2004年5月31日 
<fmt:formatDate value="${isoDate}" type="date" dateStyle="full"/>

2004年5月31日 星期一 
Attribute: timeStyle; optional. Varies the time format. 
<fmt:formatDate value="${isoDate}" type="time" timeStyle="default"/>

23:59:59 
<fmt:formatDate value="${isoDate}" type="time" timeStyle="short"/>

下午11:59 
<fmt:formatDate value="${isoDate}" type="time" timeStyle="medium"/>

23:59:59 
<fmt:formatDate value="${isoDate}" type="time" timeStyle="long"/>

下午11时59分59秒 
<fmt:formatDate value="${isoDate}" type="time" timeStyle="full"/>

下午11时59分59秒 CDT 
Attribute: pattern; optional. Inidcates date/time custom patterns. 
<fmt:formatDate value="${date}" type="both" pattern="EEEE, MMMM d, yyyy HH:mm:ss Z"/>

星期四, 四月 1, 2004 13:30:00 -0600 
<fmt:formatDate value="${isoDate}" type="both" pattern="d MMM yy, h:m:s a zzzz/>

<fmt:formatDate value="${这里可以放日期和字符串}" pattern="yyyy年MM月dd日"/>

以上是关于JSTL fmt 格式化时间的主要内容,如果未能解决你的问题,请参考以下文章

jstl-日期格式化-jsp页面需引入fmt标签

JSTL # JSTL的简单使用:核心标签 c格式化标签 fmt 函数

JSP页面日期按格式显示:jstl-fmt使用

重温JSP学习笔记--与日期数字格式化有关的jstl标签库

JSP中常用JSTL用法

JSTL--格式化日期--drp217