JSTL为您提供了fmt:formatNumber来对数字以不同的形式进行格式化。
fmt:formatNumber
fmt:formatNumber的基本用法如下:
<fmt:formatNumber value=
"value"
/>
value属性接受任何数字。fmt:formatNumber会根据客户端web浏览器设置的语言环境locale或者服务器端web应用程序设置的语言环境locale来格式化数字。
locale
例如:
<%
@page
contentType=
"text/html"
pageEncoding=
"UTF-8"
%>
@taglib
uri=
"http://java.sun.com/jsp/jstl/core"
prefix=
"c"
"http://java.sun.com/jsp/jstl/fmt"
"fmt"
<html>
<head>
<title>数字格式化</title>
</head>
<body>
<c:set var=
"val"
value=
"10.53"
<fmt:setLocale value=
"fr_FR"
"${val}"
"zh_CN"
</body>
</html>
在上面的示例中,首先定义一个变量并将其值设置为200.51。然后
我们使用操作<fmt:setLocale>覆盖了浏览器的语言环境locale。 所以虽然浏览器的环境是中文,但是在fr_FR中,显示的是法国格式200,51。我们将地区重新设置为zh_CN,它将显示为200.51。
<fmt:setLocale>
fr_FR
200,51
<fmt:formatnumber>
使用<fmt:formatnumber>的属性示例
"37.79"
<p>
37.79
的百分比:
type=
"percent"
</p>
0.336
的百分比形式:
"0.336"
输出:
37.79的百分比: 3,779%
0.336的百分比形式: 34%
例如使用科学计数法的方式打印一个大数字:
"314159265358"
pattern=
"###.###E0"
将显示为314.159E9。
314.159E9
设置locale,并把type属性设置为`` 可以显示当地的货币符号:
type
"19.90"
<p> 美国货币
"en_US"
"currency"
<p> 德国货币
"de_DE"
<p> 中国货币
输出:
美国货币 .90
德国货币 19,90 €
中国货币 ¥19.90
原文链接:https://codingdict.com/