jsp页面格式化数字或时间
转载自: http://blog.csdn.net/hakunamatata2008/archive/2011/01/21/6156203.aspxTags
fmt:requestEncoding
fmt:setLocale
fmt:timeZone
fmt:setTimeZone
fmt:bundle
fmt:setBundle
fmt:message
fmt:param
fmt:formatNumber
fmt:parseNumber
fmt:formatDate
fmt:parseDate <%&#64; taglib uri&#61;"http://java.sun.com/jsp/jstl/fmt" prefix&#61;"fmt" %>jstl fmt 函数大全主要功能格式化日期格式(2008年5月5日22点00分23秒)<fmt:formatDate value&#61;"<%&#61;new Date() %>" pattern&#61;"yyyy年MM月dd日HH点mm分ss秒" />保留两位小数<fmt:formatNumber value&#61;"123.123456789" pattern&#61;"0.00"/>格式数字(45,678.234)<fmt:formatNumber type&#61;"number" value&#61;"45678.2345" />格式百分比(23%)
<fmt:formatNumber type&#61;"percent" value&#61;"0.2345" />
<fmt:formatNumber value&#61;"${item.DD_NUM/item.TOL_NUM}" type&#61;"number" pattern&#61;"0.00%" /> 其他<fmt:bundle>&#xff1a;资源绑定。除了以前提到过的在web.xml中声明以外&#xff0c;还可以利用此标签。例<fmt:bundle basename&#61;"message">fmt:bundle><fmt:setLocale>&#xff1a;设置locale&#xff0c;主要是用于这种情况&#xff0c;一个中国人在国外&#xff0c;locale是en_US&#xff0c;但想用中文显示。例&#xff1a;<fmt:setLocal value&#61;"zh_CN"/><fmt:message>&#xff1a;输出properties文件中的指定内容。例<fmt:message key&#61;"user"/><fmt:formatNumber type&#61;"number">格式化普通数字
<fmt:formatNumber type&#61;"percent">格式化百分比三种数字类型参数&#xff1a;currency,number,percent<fmt:parseNumber var&#61;"i" type&#61;"number" value&#61;"45678.2345" />
<c:out value&#61;"${i}" escapeXml&#61;"false" /> 分析出数字<fmt:requestEncoding value&#61;"GB18030"/> 格式化文本编码<fmt:formatDate value&#61;"${date}" type&#61;"both" timeStyle&#61;"long" dateStyle&#61;"long" />
type&#61;"both" 输入日期也同时输出具体时间
timeStyle&#61;"long" 时间以“长”格式输出 差别&#xff1a;下午02时06分59秒 与 14:06:59
dateStyle&#61;"long" 日期以“长”格式输出 差别&#xff1a;2006年9月7日 与 2006-9-7四种长短参数&#xff1a;long,short,medium,full<fmt:timeZone value&#61;"${timezone}"/> 时区偏移&#xff0c;与上面可配合使用&#xff1a;
<fmt:formatDate value&#61;"${d}" timeZone&#61;"${zn}" type&#61;"both" /><fmt:parseDate var&#61;"i" type&#61;"date" value&#61;"2006-12-11" />
<c:out value&#61;"${i}" escapeXml&#61;"false" /> 分析出时间具体例子:1&#xff09;导入jstl 包&#xff0c;加载ftm标签首先将jstl的jar包放入类库中&#xff0c;使用1.2版本其次在jsp文件中引入所需要的 标记库&#xff0c;对于 ftm 标签&#xff0c;如下&#xff1a;view plaincopy to clipboardprint?<%&#64; taglib prefix&#61;&#39;fmt&#39; uri&#61;"http://java.sun.com/jsp/jstl/fmt" %> 2&#xff09;输出 .properties 文件中的信息view plaincopy to clipboardprint?<fmt:bundle basename&#61;"fmt"> test value:<fmt:message key&#61;"test" /> fmt:bundle> 其中 <fmt:bundle basename&#61;"fmt"> 指定了资源文件的位置&#xff0c;例如&#xff1a; fmt 表示类根路径下的 fmt.properties 文件&#xff0c;my.fmt 表示 包my下的ftm.properties文件&#xff1b;<fmt:message key&#61;"test" />表示读取 key为test的值&#xff0c;并输出&#xff1b;3&#xff09;给出1个例子&#xff0c;包含许多标签的使用fmt.jsp:view plaincopy to clipboardprint?<%&#64; page language&#61;"java" contentType&#61;"text/html; charset&#61;utf-8" pageEncoding&#61;"utf-8"%> <%&#64; taglib prefix&#61;&#39;c&#39; uri&#61;"http://java.sun.com/jsp/jstl/core" %> <%&#64; taglib prefix&#61;&#39;fmt&#39; uri&#61;"http://java.sun.com/jsp/jstl/fmt" %> <% String path &#61; request.getContextPath(); String basePath &#61; request.getScheme()&#43;"://"&#43;request.getServerName()&#43;":"&#43;request.getServerPort()&#43;path&#43;"/"; %> DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href&#61;"<%&#61;basePath%>"> <mce:style type&#61;"text/css">mce:style><style type&#61;"text/css" mce_bogus&#61;"1"> body {background-color: black;color: white;} span {text-align: center;color: green;background-color: yellow;} .notice {color: rgb(250,37,62);} hr { background-color: fuchsia; height: 5px;} style> head> <body> <fmt:bundle basename&#61;"jstl.jstl"> <span>从 .properties 文件中读取最简单的信息输出&#xff1a;span> <fmt:message key&#61;"basemsg" /> <hr/> <span>从 .properties 文件中读取带有可填参数的信息&#xff0c;填入参数并输出&#xff1a;span> <fmt:message key&#61;"msgwithparam"> <span class&#61;"notice"><fmt:param value&#61;"param-1-value" /> <span class&#61;"notice"><fmt:param value&#61;"param-2-value" /> fmt:message> <hr/> <span>数字 格式化并输出&#xff1a;span><br/> 数字:<fmt:formatNumber value&#61;"1234567890" type&#61;"number"/><br/> 数字&#xff0c;定制了格式:<fmt:formatNumber value&#61;"1234567890" type&#61;"number" pattern&#61;"#,#00.0#" /><br/> 货币&#xff1a;<fmt:formatNumber value&#61;"35000" type&#61;"currency" /><br/> 百分比&#xff1a;<fmt:formatNumber value&#61;"0.317" type&#61;"percent" /><br/> <hr/> <span>格式化日期&#xff1a;span><br/> <jsp:useBean id&#61;"now" class&#61;"java.util.Date">jsp:useBean> <fmt:formatDate value&#61;"${now}" type&#61;"date" /><br/> <fmt:formatDate value&#61;"${now}" type&#61;"both" dateStyle&#61;"long" timeStyle&#61;"long" /><br/> <fmt:formatDate value&#61;"${now}" type&#61;"both" pattern&#61;"yyyy.MM.dd HH:mm:ss" /><br/> <hr/> <span>将字符串转化到正确的数字&#xff1a;<br/> 忽略第一个不符合数字条件的字符和其之后的所有字符&#xff0c;如果字符串不是以数字开头则报错span><br/> <fmt:parseNumber type&#61;"number" >123.02afmt:parseNumber><br/> <fmt:parseNumber type&#61;"number" pattern&#61;"#,#00.0#">123fmt:parseNumber><br/> <fmt:parseNumber type&#61;"number" pattern&#61;"#,#00.0#">123.00a1fmt:parseNumber><br/> <fmt:parseNumber type&#61;"number" pattern&#61;"#,#00.0#">3saaafmt:parseNumber><br/> fmt:bundle> body> html> jstl 包下的 jstl.properties 文件&#xff1a;view plaincopy to clipboardprint?#for jstl learn basemsg&#61;This is a base msg. msgwithparam&#61;This is a msg with params:first <font color&#61;"red">{0}font> second <font color&#61;"aqua"> {1}font> . 另一篇&#xff1a;国际化格式标签库包括国际化&#xff0c;消息和数字日期格式化:(1) 国际化:<fmt:setLocale> <fmt::requestEncoding>如:
<%&#64; page language&#61;"java" contentType&#61;"text/html; charset&#61;gb2312" import&#61;"java.util.*"%>
<%&#64; taglib prefix&#61;"c" uri&#61;"http://java.sun.com/jsp/jstl/core" %>
<%&#64; taglib prefix&#61;"fmt" uri&#61;"http://java.sun.com/jsp/jstl/fmt" %>
DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv&#61;"Content-Type" content&#61;"text/html; charset&#61;ISO-8859-1">
<title>Insert title heretitle>
head>
<body>
<c:set var&#61;"todayValue" value&#61;"<%&#61;new Date() %>"/>中文&#xff0d;大陆:<fmt:setLocale value&#61;"zh"/>
<fmt:formatDate value&#61;"${todayValue}"/><br>
中文-台湾<fmt:setLocale value&#61;"zh_tw"/>
<fmt:formatDate value&#61;"${todayValue}"/><br>
中文-新加坡<fmt:setLocale value&#61;"zh_sg"/>
<fmt:formatDate value&#61;"${todayValue}"/><br>
英文:<fmt:setLocale value&#61;"en"/>
<fmt:formatDate value&#61;"${todayValue}"/>
body>
html>页面输出:中文&#xff0d;大陆: 2007-12-25
中文-台湾 2007/12/25
中文-新加坡 25-十二月-07
英文: Dec 25, 2007(2)消息标签:<fmt:bundle> <fmt:message> <fmt:setBundle> <fmt:param>如:
<%&#64; page language&#61;"java" contentType&#61;"text/html; charset&#61;gb2312" import&#61;"java.util.*"%>
<%&#64; taglib prefix&#61;"fmt" uri&#61;"http://java.sun.com/jsp/jstl/fmt" %>
<%&#64; taglib prefix&#61;"c" uri&#61;"http://java.sun.com/jsp/jstl/core" %>
DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>bundle testtitle>
head>
<body>
<fmt:bundle basename&#61;"dbconn">
数据库驱动程序名:<fmt:message key&#61;"driverName"/><br>
连接字符串:<fmt:message key&#61;"connString"/><br>
用户名:<fmt:message key&#61;"userName"/><br>
密码:<fmt:message key&#61;"password" var&#61;"password"/><c:out value&#61;"${password}"/><br>
名字:<fmt:message key&#61;"name"/><br>
动态提示信息:<fmt:message key&#61;"messageTemp"/><br>
fmt:bundle>
<c:set var&#61;"todayTemp" value&#61;"<%&#61;new Date() %>"/>
<fmt:setBundle basename&#61;"dbconn"/>
动态提示信息:
<fmt:message key&#61;"messageTemp"><fmt:param>邓子云fmt:param><fmt:param value&#61;"${todayTemp}">fmt:param>
fmt:message>body>
html>