jstl——数字格式化

<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

<fmt:formatNumber value="${num}" maxFractionDigits="2" />

例如:num = 3.1415926575897932

显示:3.14 (即保留小数点后两位小数)

 

-------------------------------------------------------------------------

 

本文通过一个示例描述如何使用jstl的fmt标签库格式化各种数字
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<html>
  <head>
    <title>Format Percent</title>
  </head>

  <body>
    <form method="POST">
      <table border="1" cellpadding="0" cellspacing="0"
      style="border-collapse: collapse" bordercolor="#FF9900"
      width="62%" id="AutoNumber1">
        <tr>
          <td width="100%" colspan="2" bgcolor="#660000">
            <p align="center">
              <b>
                <font color="#FFFFFF" size="4">Number
                Formatting</font>
              </b>
            </p>
          </td>
        </tr>

        <tr>
          <td width="47%">Enter a percent to be formatted:</td>

          <td width="53%">
            <input type="text" name="num" size="20" />
          </td>
        </tr>

        <tr>
          <td width="100%" colspan="2">
            <p align="center">
              <input type="submit" value="Submit" name="submit" />

              <input type="reset" value="Reset" name="reset" />
            </p>
          </td>
        </tr>
      </table>

      <p>&#160;</p>
    </form>

    <c:if test="${pageContext.request.method=='POST'}">
      <table border="1" cellpadding="0" cellspacing="0"
      style="border-collapse: collapse" bordercolor="#111111"
      width="63%" id="AutoNumber2">
        <tr>
          <td width="100%" colspan="2" bgcolor="#660000">
            <p align="center">
              <b>
                <font color="#FFFFFF" size="4">Formatting:
                <c:out value="${param.num}" />
                </font>
              </b>
            </p>
          </td>
        </tr>

        <tr>
          <td width="51%">type="percent"</td>

          <td width="49%">
            <fmt:formatNumber type="percent"
            value="${param.num}" />
          </td>
        </tr>

        <tr>
          <td>type="percent" maxIntegerDigits="3"</td>

          <td>
            <fmt:formatNumber type="percent" maxIntegerDigits="3"
            value="${param.num}" />
          </td>
        </tr>

        <tr>
          <td>type="percent" minIntegerDigits="10"</td>

          <td>
            <fmt:formatNumber type="percent" minIntegerDigits="10"
            value="${param.num}" />
          </td>
        </tr>

        <tr>
          <td>type="percent" maxFractionDigits="3"</td>

          <td>
            <fmt:formatNumber type="percent" maxFractionDigits="3"
            value="${param.num}" />
          </td>
        </tr>

        <tr>
          <td>type="percent" minFractionDigits="10"</td>

          <td>
            <fmt:formatNumber type="percent" minFractionDigits="10"
            value="${param.num}" />
          </td>
        </tr>

        <tr>
          <td>type="percent" maxFractionDigits="3"
          groupingUsed="false"</td>

          <td>
            <fmt:formatNumber type="percent" maxFractionDigits="3"
            groupingUsed="false" value="${param.num}" />
          </td>
        </tr>
      </table>
    </c:if>
  </body>
</html>
格式化效果如下表所示:

Formatting: 0.56

type="percent"56%
type="percent" maxIntegerDigits="3"56%
type="percent" minIntegerDigits="10"0,000,000,056%
type="percent" maxFractionDigits="3"56%
type="percent" minFractionDigits="10"56.0000000000%
type="percent" maxFractionDigits="3" groupingUsed="false"56%

-------------------------------------------------------------

 

JSTL fmt:formatNumber 数字、货币格式化

<fmt:formatNumber value="12" type="currency" pattern="$.00"/> -- $12.00

<fmt:formatNumber value="12" type="currency" pattern="$.0#"/> -- $12.0

<fmt:formatNumber value="1234567890" type="currency"/> -- $1,234,567,890.00(那个货币的符号和当前web服务器的 local 设定有关)

<fmt:formatNumber value="123456.7891" pattern="#,#00.0#"/> -- 123,456.79

<fmt:formatNumber value="123456.7" pattern="#,#00.0#"/> -- 123,456.7

<fmt:formatNumber value="123456.7" pattern="#,#00.00#"/> -- 123,456.70

<fmt:formatNumber value="12" type="percent" /> -- 1,200% (type 可以是currency、 number、 和percent)。

java格式化输出:
DecimalFormat df = new DecimalFormat("格式");
String fmt =df.format(double);
符号                  意义
0                     一个数位
#                     一个数位,前导零和追尾零不显示
.                      小数点分割位置
,                     组分隔符的位置
-                      负数前缀
%                    用100乘,并显示百分号
其他任何符号    在输出字符串中包括指定符号

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值