runoops.com

<fmt:parseNumber>标签

JSTL <fmt:parseNumber> 标签用于解析数字、货币和百分比。

语法

JSP <fmt:parseNumber> 标签的语法如下:

<fmt:parseNumber
  value="number"
  type="number|currency|percent"
  pattern="customPattern"
  [parseLocale="parseLocale"]
  [integerOnly="true|false"]
  var="varname"
  scope="page|request|session|application"/>

其中,[ ] 中的内容为可选项,参数说明如下表所示。

参数 说明
value 需要解析的数字
type 设定数字的单位,有 3 种:number(数字)、currency(货币)、percent(百分比)
pattern 设定显示的格式
integerOnly 设置是否只输出整数部分
parseLocale 解析数字时所用的区域
var 代表格式化后的数字,如果设定了该参数,需要使用 <c:out> 标签输出
scope 设定参数 var 的有效范围,默认为 page。

关于 pattern 属性中的特殊字符说明可查看《<fmt:formatNumber>标签》一节。

示例

<fmt:parseNumber> 标签的简单实例如下:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    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>
<html>
<head>
<title>runoops自学(www.runoops.com)</title>
</head>
<body>
    <c:set var="Amount" value="786.970" />
    <fmt:parseNumber var="j" type="number" value="${Amount}" />
    <c:out value="${j}" />
    <fmt:parseNumber var="j" integerOnly="true" type="number"
        value="${Amount}" />
    只输出整数部分:
    <c:out value="${j}" />
</body>
</html>

页面输出内容如下:

786.97
只输出整数部分: 786