JSP中常用的JSTL fmt(format格式化)标签用法整理
JSTL标签提供了对国际化(I18N)的支持,它可以根据发出请求的客户端地域的不同来显示不同的语言。同时还提供了格式化数据和日期的方法。实现这些功能需要I18N格式标签库(I18N-capableformationtagsliberary)。引入该标签库的方法为:
<%@taglibprefix="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标签。
接下将详细介绍这些标签的功能和使用方式。
<fmt:formatNumber>标签
根据区域或定制的方式将数字格式化成数字、货币或百分比
<fmt:formatNumbervalue="number"[type={number|currency|percent|}]
[pattern="pattern"]
[currencyCode="currencyCode"]
[currentSymbol="currentSymbol"]
[groupingUsec="{true|false}"]
[maxIntergerDigits="maxIntergerDigits"]
[minIntergerDigits="minIntergerDigits"]
[maxFractionDigits="maxFractionDigits"]
[minFractionDigits="minFractionDigits"]
[var="varname"]
[scope="page|request|session|application"]
/>
<%@pagelanguage="java"contentType="text/html;charset=utf-8"%> <%@tagliburi="http://java.sun.com/jsp/jstl/fmt"prefix="fmt"%> <!DOCTYPEhtml> <html> <head> <title>FormatNumber标签使用</title> </head> <body> <h1>FormatNumber标签使用</h1> <fmt:setLocalevalue="fr_fr"/> France:<fmt:formatNumbervalue="123456789.012"/> <fmt:setLocalevalue="zh_cn"/> China:<fmt:formatNumbervalue="123456789.012"/> <fmt:setLocalevalue="de_de"/> Germany:<fmt:formatNumbervalue="123456789.012"/> </body> </html>
<fmt:parseNumber/>标签
用来将字符串类型的数字、货币、或百分比转换成数字类型
<fmt:parseNumbervalue="numberString"[type={number|currency|percent|}]
[pattern="pattern"]
[parseLocale="parseLocale"]
[integerOnly="{false|true}"]
[var="varname"]
[scope="page|request|session|application"]
/>
<fmt:formatDate/>标签
用来将日期类型转换为字符串类型日期
<fmt:formatDatevalue="number"[type={time|date|both}]
[pattern="pattern"]
[dateStyle="{default|short|medium|long|full}"]
[timeStyle="{default|short|medium|long|full}"]
[timeZone="timeZone"]
[var="varname"]
[scope="page|request|session|application"]
/>
<fmt:parseDate/>标签
用来将字符串类型的时间或日期转换成日期时间类型
<fmt:parseDatevalue="date"[type={time|date|both}]
[pattern="pattern"]
[dateStyle="{default|short|medium|long|full}"]
[timeStyle="{default|short|medium|long|full}"]
[timeZone="timeZone"]
[var="varname"]
[scope="page|request|session|application"]
/>
<fmt:setTimeZone/>标签
用来设置默认时区或将时区存储到属性范围中
<fmt:setTimeZonevalue="timezone"[var="varname"][scope="{page|request|session|application}"]/>