<fmt:formatNumber>标签:用于格式化数字,<fmt:formatNumber>标记是用来设置数字,百分比和货币的格式。
属性描述
value:格式化的数字,该数值可以是 String 类型或 java.lang.Number 类型的实例
type:格式化的类型,可能值包括:currency(货币)、number(数字)和percent(百分比)
pattern:格式化模式
var:结果保存变量
scope:变量的作用范围
maxIntegerDigits:指定格式化结果的最大值
minIntegerDigits:指定格式化结果的最小值
maxFractionDigits:指定格式化结果的最大值,带小数
minFractionDigits:指定格式化结果的最小值,带小数
如:
<fmt:parseNumber> 标签:用于解析数字
属性描述
value:将被解析的字符串
type:解析格式化的类型
pattern:解析格式化模式
var:结果保存变量,类型为 java.lang.Number
scope:变量的作用范围
parseLocale:以本地化的形式来解析字符串,该属性的内容应为 String 或 java.util.Locale 类型的实例
如:
<%@ page language=”java” import=”java.util.*” pageEncoding=”utf-8″%>
<%@ taglib uri=”http://java.sun.com/jsp/jstl/core” prefix=”c”%>
<%@ taglib uri=”http://java.sun.com/jsp/jstl/fmt” prefix=”fmt”%>
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”>
<html>
<head>
<title>My JSP ‘fmt_formatNumber.jsp’ starting page</title>
</head>
<body>
<%
// 获取所有的field,放在数组中
java.lang.reflect.Field[] field = Locale.class.getFields();
List<Locale> list = new ArrayList<Locale>();
for(int i=0; i<field.length; i++){ // 遍历所有的field
if(field[i].getType().equals(Locale.class)){ // 判断获得类型为Locale类型
list.add((Locale)field[i].get(null)); // 把获得的对象添加到list中
}
}
request.setAttribute(“localeList”, list); // 把list集合添加到request中
double[] number = { 0, 10000, 55.0, -123.2568 }; // 定义一个数字类型的数组
request.setAttribute(“numbers”, number); // 把数组numbers保存到request中
%>
<fmt:setLocale value=”${ param.locale }”/>
当前格式:<c:out value=”${ param.locale }” default=”${ pageContext.request.locale } ” />
<c:forEach items=”${ localeList }” var=”locale”>
<a href=”${ pageContext.request.requestURI }?locale=${ locale }”>${ locale }</a>
</c:forEach>
<table>
<tr class=”title”>
<td>数字原值</td>
<td>数字格式</td>
<td>货币格式</td>
<td>百分数格式</td>
</tr>
<c:forEach items=”${ numbers }” var=”number”>
<tr>
<td>${ number }</td>
<td><fmt:formatNumber value=”${ number }” type=”number”
maxFractionDigits=”4″ minIntegerDigits=”3″ maxIntegerDigits=”3″
minFractionDigits=”2″ /></td>
<td><fmt:formatNumber value=”${ number }” type=”currency” /></td>
<td><fmt:formatNumber value=”${ number }” type=”percent” /></td>
</tr>
</c:forEach>
</table>
</body>
</html>