English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
<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"時の通貨コード | いいえ | デフォルトの地域に依存 |
currencySymbol | type="currency"時の通貨記号 | いいえ | デフォルトの地域に依存 |
groupingUsed | 数字のグループ化を行うかどうか(TRUEまたはFALSE) | いいえ | true |
maxIntegerDigits | 整数の最大桁数 | いいえ | なし |
minIntegerDigits | 整数の最小桁数 | いいえ | なし |
maxFractionDigits | 小数点以下の最大桁数 | いいえ | なし |
minFractionDigits | 小数点以下の最小桁数 | いいえ | なし |
変数 | フォーマット化された数字を格納する変数 | いいえ | ページに印刷 |
範囲 | var属性の範囲 | いいえ | ページ |
type属性がpercentまたはnumberの場合、他のいくつかのフォーマット化数字属性を使用できます。maxIntegerDigits属性とminIntegerDigits属性は、整数の長さを指定します。実際の数字がmaxIntegerDigitsで指定された最大値を超えた場合、その数字は切り捨てられます。
小数点以下の桁数を指定する属性があります。minFractionalDigits属性とmaxFractionalDigits属性は、小数点以下の桁数を指定します。実際の数字が指定された範囲を超えた場合、その数字は切り捨てられます。
数字のグループは、3桁ごとにカンマを入れることができます。groupingIsUsed属性は、数字のグループを使用するかどうかを指定します。minIntegerDigits属性と一緒に使用する場合は、期待される結果を得るために非常に注意が必要です。
pattern属性を使用すると、指定された文字を数字エンコード時に含めることができます。以下のテーブルにはこれらの文字が列挙されています。
シンボル | 説明 |
---|---|
0 | 1桁の数字を表します |
E | 指数形式を使用 |
# | 1桁の数字を表します。存在しない場合は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