JSTL I18N格式标签库之----数字日期格式化
2014-10-29 20:51
375 查看
I18N格式标签库:I18N-capable formation tags library.它可以根据发出请求的客户端地域的不同来显示不同的语言。同时还提供了格式化数据和日期的方法。引入该标签库的方法为:
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
I18N格式标签库提供了11个标签,这些 标签从功能上可以划分为3类如下:
1)数字日期格式化。formatNumber标签、formatData标签、parseNumber标签、parseDate标签、timeZone标签、setTimeZone标签。
2)读取消息资源。bundle标签、message标签、setBundle标签。
3)国际化。setlocale标签、requestEncoding标签。
1.<frm:formatNumber/>标签
该标签依据特定的区域将数字改变为不同的格式来显示。
【语法】:
<frm:formatNumber value=”被格式化的数据”[type=”number|currency|percent”]
[pattern=”pattern”]
[currencyCode=”code”]
[currencySymbol=”symbol”]
[groupingUsed=”true|false”]
[maxIntergerDigits=”maxDigits”]
[minIntergerDigits=”minDigits”]
[maxFractionDigits=”maxDigits”]
[minFractionDigits=”minDigits”]
[var=”name”]
[scope=page|request|session|application]
/>
其中,Type属性的类型见下表:
举个例子:
显示结果如下:
2.<frm:parseNumber>标签
将格式化后的数字、货币、百分比都转化为数字类型。
【语法】:
<fmt:parseNumber value="number" [type=”number|currency|percent”]
[pattern=”pattern”]
[parseLocale=”locale”]
[intergerOnly=”true|false”]
[scope=”page|request|session|application”]
/>
举个例子:
显示结果:
3.<fmt:formatDate>标签
该标签主要用来格式化日期和时间。
【语法】:
<fmt: formatDate value=”date” [type=”time|date|both”]
[pattern=”pattern”]
[dateStyle=”default|short|medium|long|full”]
[timeStyle=”default|short|medium|long|full”]
[timeZone=”timeZone”]
[var=”name”]
[scope=”page|request|session|application”]
/>
其中 type 属性类型有:
举个例子:
显示结果:
4.<fmt:parseDate>标签
<fmt:parseDate>标签主要将字符串类型的时间或日期转化为时间或日期对象。
【语法】:
<fmt:parseDate value=”date” [type=”time|date|both”]
[pattern=”pattern”]
[parseLocale=”locale”]
[dateStyle=”default|short|medium|long|full”]
[timeStyle=”default|short|medium|long|full”]
[timeZone=”timezone”]
[var=”name”]
[scope=”page|request|session|application”]
/>
举个例子:
显示结果:
5. <fmt:setTimeZone>标签
该标签用于设定默认时区,或者将时区存储在指定的JSP范围内。
【语法】
<fmt:setTimeZone value="value" [var="name"] [scope="page|request|session|application"]/>
举个例子:
<fmt:setTimeZone value="EST" scope="session"> 中国使用的时区为CST。有关TimeZone的说明在JDK帮助文档的 java.util.TimeZone 类。
6. <fmt:timeZone>标签
该标签主要用于设置标签体内使用的时区。
【语法】
<fmt:timeZone value="timeZone">
……
</fmt:timeZone>
该标签只会应用到标签体内使用的时区,为标签外部不产生影响。
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
I18N格式标签库提供了11个标签,这些 标签从功能上可以划分为3类如下:
1)数字日期格式化。formatNumber标签、formatData标签、parseNumber标签、parseDate标签、timeZone标签、setTimeZone标签。
2)读取消息资源。bundle标签、message标签、setBundle标签。
3)国际化。setlocale标签、requestEncoding标签。
1.<frm:formatNumber/>标签
该标签依据特定的区域将数字改变为不同的格式来显示。
【语法】:
<frm:formatNumber value=”被格式化的数据”[type=”number|currency|percent”]
[pattern=”pattern”]
[currencyCode=”code”]
[currencySymbol=”symbol”]
[groupingUsed=”true|false”]
[maxIntergerDigits=”maxDigits”]
[minIntergerDigits=”minDigits”]
[maxFractionDigits=”maxDigits”]
[minFractionDigits=”minDigits”]
[var=”name”]
[scope=page|request|session|application]
/>
其中,Type属性的类型见下表:
举个例子:
<%@ page language="java" pageEncoding="gbk"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> <html> <head> <title>I18N标签库</title> </head> <body> <h4 align="center"> <c:out value="<frm:number>标签的使用"></c:out> </h4> <hr> <table border=1 cellpadding="0" cellspacing="0" align="center"> <tr align="center"> <td width="100"> 类型 </td> <td width="100"> 使用数据 </td> <td width="100"> 结果 </td> <td width="300"> 说明 </td> </tr> <tr> <td> 数字格式化 </td> <td> 108.75 </td> <td> <fmt:formatNumber type="number" pattern="###.#">108.75</fmt:formatNumber> </td> <td> 使用pattern可以定义显示的样式。本例设定为###.#小数部分将使用四舍五入法。 </td> </tr> <tr> <td> 数字格式化 </td> <td> 9557 </td> <td> <fmt:formatNumber type="number" pattern="#.####E0">9557</fmt:formatNumber> </td> <td> 使用科学计数法。 </td> </tr> <tr> <td> 数字格式化 </td> <td> 9557 </td> <td> <fmt:formatNumber type="number">9557</fmt:formatNumber> </td> </td> <td> 使用默认分组。 </td> </tr> <tr> <td> 数字格式化 </td> <td> 9557 </td> <td> <fmt:formatNumber type="number" groupingUsed="false">9557</fmt:formatNumber> </td> <td> 不使用分组。 </td> </tr> <tr> <td> 数字格式化 </td> <td> 9557 </td> <td> <fmt:formatNumber type="number" maxIntegerDigits="3">9557</fmt:formatNumber> </td> <td> 使用位数限定,根据指定的位数显示,其他数字忽略。例如:9不被显示。 </td> </tr> <tr> <td> 百分比格式化 </td> <td> 0.98 </td> <td> <fmt:formatNumber type="percent">0.98</fmt:formatNumber> </td> <td> 用百分比形式显示一个数据。 </td> </tr> <tr> <td> 货币格式化 </td> <td> 188.88 </td> <td> <fmt:formatNumber type="currency">188.8</fmt:formatNumber> </td> <td> 将一个数据转化为货币形式输出。 </td> </tr> <tr> <td> 存储数据 </td> <td> 188.88 </td> <td> <fmt:formatNumber type="currency" var="money">188.8</fmt:formatNumber> <c:out value="${money}"></c:out> </td> <td> 存储的money的值为${money} </td> </tr> </table> </body> </html>
显示结果如下:
2.<frm:parseNumber>标签
将格式化后的数字、货币、百分比都转化为数字类型。
【语法】:
<fmt:parseNumber value="number" [type=”number|currency|percent”]
[pattern=”pattern”]
[parseLocale=”locale”]
[intergerOnly=”true|false”]
[scope=”page|request|session|application”]
/>
举个例子:
<%@ page language="java" pageEncoding="gbk"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> <html> <head> <title>I18N标签库</title> </head> <body> <h4> <c:out value="<frm:parseNumber>标签的使用"></c:out> </h4> <hr> </body> <fmt:formatNumber type="currency" var="money">188.8</fmt:formatNumber> <li> 格式化前的数据为: <c:out value="${money}"></c:out> <fmt:parseNumber var="money" type="currency">${money}</fmt:parseNumber> <li> 格式化后的数据为: <c:out value="${money}"></c:out> <li> 可以对格式化的后的数据进行运算: <c:out value="${money+200}"></c:out> <li> 对百分比进行格式化98%为: <fmt:parseNumber type="percent">98%</fmt:parseNumber> </html>
显示结果:
3.<fmt:formatDate>标签
该标签主要用来格式化日期和时间。
【语法】:
<fmt: formatDate value=”date” [type=”time|date|both”]
[pattern=”pattern”]
[dateStyle=”default|short|medium|long|full”]
[timeStyle=”default|short|medium|long|full”]
[timeZone=”timeZone”]
[var=”name”]
[scope=”page|request|session|application”]
/>
其中 type 属性类型有:
举个例子:
<%@ page language="java" pageEncoding="gbk"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> <jsp:useBean id="date" class="java.util.Date"></jsp:useBean> <html> <head> <title>I18N标签库</title> </head> <body> <fmt:formatDate value="${date}"></fmt:formatDate> <br> <fmt:formatDate value="${date}" type="both"></fmt:formatDate> <br> <fmt:formatDate value="${date}" type="both" dateStyle="default" timeStyle="default"></fmt:formatDate> <br> <fmt:formatDate value="${date}" type="both" dateStyle="short" timeStyle="short"></fmt:formatDate> <br> <fmt:formatDate value="${date}" type="both" dateStyle="long" timeStyle="long"></fmt:formatDate> <br> <fmt:formatDate value="${date}" type="both" dateStyle="full" timeStyle="full"></fmt:formatDate> <br> <fmt:formatDate value="${date}" type="both" dateStyle="full" timeStyle="full"></fmt:formatDate> <br> </body> </html>
显示结果:
4.<fmt:parseDate>标签
<fmt:parseDate>标签主要将字符串类型的时间或日期转化为时间或日期对象。
【语法】:
<fmt:parseDate value=”date” [type=”time|date|both”]
[pattern=”pattern”]
[parseLocale=”locale”]
[dateStyle=”default|short|medium|long|full”]
[timeStyle=”default|short|medium|long|full”]
[timeZone=”timezone”]
[var=”name”]
[scope=”page|request|session|application”]
/>
举个例子:
<%@ page language="java" pageEncoding="gbk"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> <jsp:useBean id="date" class="java.util.Date"></jsp:useBean> <html> <head> <title>I18N标签库</title> </head> <body> <H4> <c:out value="<frm:parseDate>标签的使用"></c:out> </H4> <hr> <fmt:formatDate value="${date}" var="a" type="both" dateStyle="full" timeStyle="full"></fmt:formatDate> <fmt:parseDate var="b" type="both" dateStyle="full" timeStyle="full"> ${a} </fmt:parseDate> <% out.println(pageContext.getAttribute("b").toString()); out.println("<br>"); out.println(pageContext.getAttribute("b").hashCode()); %> </body> </html>
显示结果:
5. <fmt:setTimeZone>标签
该标签用于设定默认时区,或者将时区存储在指定的JSP范围内。
【语法】
<fmt:setTimeZone value="value" [var="name"] [scope="page|request|session|application"]/>
举个例子:
<fmt:setTimeZone value="EST" scope="session"> 中国使用的时区为CST。有关TimeZone的说明在JDK帮助文档的 java.util.TimeZone 类。
6. <fmt:timeZone>标签
该标签主要用于设置标签体内使用的时区。
【语法】
<fmt:timeZone value="timeZone">
……
</fmt:timeZone>
该标签只会应用到标签体内使用的时区,为标签外部不产生影响。
相关文章推荐
- [置顶] JSTL I18N 格式标签库 使用之一_____数字日期格式化
- JSTL标签库学习笔记 六、I18N格式化标签库的数字日期格式化、读取消息资源、国际化
- JSTL标签库学习笔记 六、I18N格式化标签库的数字日期格式化、读取消息资源、国际化
- JSTL I18N 格式标签库 使用之一_____数字日期格式化
- JSTL I18N 格式标签库 使用之一_____数字日期格式化
- JSTL I18N 格式标签库___数字日期格式化
- JSTL I18N 格式标签库 使用之一_____数字日期格式化
- JSTL标签库数字,日期格式化
- [应用篇]JSTL之fmt标签日期和数字格式化
- Jstl数字日期格式化标签
- 重温JSP学习笔记--与日期数字格式化有关的jstl标签库
- JSTL标签库数字,日期格式化[转发]
- JSTL标签格式化数字和日期
- JSTL标签库中fmt标签,日期,数字的格式化
- jstl标签,格式化日期和 数字<fmt>
- jstl 日期字符格式化标签
- JSTL fmt:formatNumber日期、 数字、货币格式化
- JSTL fmtformatNumber日期、 数字、货币格式化
- JSTL fmt:formatNumber日期、 数字、货币格式化
- JSTL 数字日期标签库