<fmt:formatNumber> 標簽

JSP 標準標簽庫

<fmt:formatNumber>標簽用于格式化數字,百分比,貨幣。

語法格式

<fmt:formatNumber
  value="<string>"
  type="<string>"
  pattern="<string>"
  currencyCode="<string>"
  currencySymbol="<string>"
  groupingUsed="<string>"
  maxIntegerDigits="<string>"
  minIntegerDigits="<string>"
  maxFractionDigits="<string>"
  minFractionDigits="<string>"
  var="<string>"
  scope="<string>"/>

屬性

<fmt:formatNumber>標簽有如下屬性:

屬性 描述 是否必要 默認值
value 要顯示的數字
type NUMBER,CURRENCY,或 PERCENT類型 Number
pattern 指定一個自定義的格式化模式用與輸出
currencyCode 貨幣碼(當type="currency"時) 取決于默認區(qū)域
currencySymbol 貨幣符號 (當 type="currency"時) 取決于默認區(qū)域
groupingUsed 是否對數字分組 (TRUE 或 FALSE) true
maxIntegerDigits 整型數最大的位數
minIntegerDigits 整型數最小的位數
maxFractionDigits 小數點后最大的位數
minFractionDigits 小數點后最小的位數
var 存儲格式化數字的變量 Print to page
scope var屬性的作用域 page

如果type屬性為percent或number,那么您就可以使用其它幾個格式化數字屬性。maxIntegerDigits屬性和minIntegerDigits屬性允許您指定整數的長度。若實際數字超過了maxIntegerDigits所指定的最大值,則數字將會被截斷。

有一些屬性允許您指定小數點后的位數。minFractionalDigits屬性和maxFractionalDigits屬性允許您指定小數點后的位數。若實際的數字超出了所指定的范圍,則這個數字會被截斷。

數字分組可以用來在每三個數字中插入一個逗號。groupingIsUsed屬性用來指定是否使用數字分組。當與minIntegerDigits屬性一同使用時,就必須要很小心地來獲取預期的結果了。

您或許會使用pattern屬性。這個屬性可以讓您在對數字編碼時包含指定的字符。接下來的表格中列出了這些字符。

符號 描述
0 代表一位數字
E 使用指數格式
# 代表一位數字,若沒有則顯示 0,前導 0 和追尾 0 不顯示。
. 小數點
, 數字分組分隔符
; 分隔格式
- 使用默認負數前綴
% 百分數
? 千分數
¤ 貨幣符號,使用實際的貨幣符號代替
X 指定可以作為前綴或后綴的字符
' 在前綴或后綴中引用特殊字符

示例演示

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ 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>JSTL fmt:formatNumber 標簽</title>
</head>
<body>
<h2>數字格式化:</h2>
<c:set var="balance" value="120000.2309" />
<p>格式化數字 (1): <fmt:formatNumber value="${balance}" 
            type="currency"/></p>
<p>格式化數字 (2): <fmt:formatNumber type="number" 
            maxIntegerDigits="3" value="${balance}" /></p>
<p>格式化數字 (3): <fmt:formatNumber type="number" 
            maxFractionDigits="3" value="${balance}" /></p>
<p>格式化數字 (4): <fmt:formatNumber type="number" 
            groupingUsed="false" value="${balance}" /></p>
<p>格式化數字 (5): <fmt:formatNumber type="percent" 
            maxIntegerDigits="3" value="${balance}" /></p>
<p>格式化數字 (6): <fmt:formatNumber type="percent" 
            minFractionDigits="10" value="${balance}" /></p>
<p>格式化數字 (7): <fmt:formatNumber type="percent" 
            maxIntegerDigits="3" value="${balance}" /></p>
<p>格式化數字 (8): <fmt:formatNumber type="number" 
            pattern="###.###E0" value="${balance}" /></p>
<p>美元 :
<fmt:setLocale value="en_US"/>
<fmt:formatNumber value="${balance}" type="currency"/></p>
</body>
</html>

運行結果如下:

數字格式化:
格式化數字 (1): ¥120,000.23
格式化數字 (2): 000.231
格式化數字 (3): 120,000.231
格式化數字 (4): 120000.231
格式化數字 (5): 023%
格式化數字 (6): 12,000,023.0900000000%
格式化數字 (7): 023%
格式化數字 (8): 120E3
美元 : $120,000.23

JSP 標準標簽庫

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清