English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

<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 표시할 숫자 Yes 없음
type NUMBER, CURRENCY 또는 PERCENT 유형 아니요 Number
pattern 출력에 사용할 사용자 정의 포맷 모드를 지정 아니요 없음
currencyCode 통화 코드 (type="currency" 시) 아니요 기본 지역에 따라
currencySymbol 통화 기호 (type="currency" 시) 아니요 기본 지역에 따라
groupingUsed 숫자 그룹화 여부 (TRUE 또는 FALSE) 아니요 true
maxIntegerDigits 정수형의 최대 자릿수 아니요 없음
minIntegerDigits 정수형의 최소 자릿수 아니요 없음
maxFractionDigits 소수점 뒤의 최대 자릿수 아니요 없음
minFractionDigits 소수점 뒤의 최소 자릿수 아니요 없음
var 형식화된 숫자를 저장하는 변수 아니요 페이지에 출력
범위 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 표준 태그 라이브러리