源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

java、freemarker保留两位小数

  • 时间:2021-03-14 07:29 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:java、freemarker保留两位小数
[b] 一、Java保留2位小数[/b]
double acc = 22.4322;
String accX = String.format("%.2f", acc);
[b]二、freemarker保留两位小数[/b]
<#if centerFreeSize??>
  ${centerFreeSize?string("#.##")}
<#else>
  0.00
</#if>
[b]补充:freemarker保留小数[/b] freemarker保留两位小数 [b]方法一[/b]    [code] #{number ;m1M2}[/code]    m 最少几位小数,M最多几位小数 [b]方法二[/b] [code]  ${x?string("0.##")}    [/code] 在开发中很容易忽视一点,输入一个值(可能是小数),输出时如果不做处理,就很容易出现 隐形的BUG。比如,如果从数据库取出一个0.22的数值,一般的输出${x?if_exists?html}, 这时是显示0,而不是0.22。 应该写成${x?if_exists?string.number} 或者 ${x?if_exists.toString()?html} 1, 小于1的数字在freemarker中相减错误 2,1000,2000这类的数字在freemarker中的格式错误,会被解释成1,000  解决方法设置number在freemarker的显示格式 Xml代码
<#setting number_format="0.00"> 
  <#assign x="${goodsgroupt.memberprice}"/> 
  <#assign y="${goodsgroupt.groupprice}"/> 
  ${(x?number-y?number)} 
重点就是这个number_format了 网上说让number_format="0",这样只能解决第二种情况。 [b]四、局部设置[/b] 特点: 如果在某个页面,或者某几个页面(其它页面可import进来),用到的数字格式化是相同的,可考虑统一配置数字的格式化形式 用法: 只需在用到需要格式化的数字之前 设置就可以了,格式如下: <#setting number_format=",##0.##">  其中",##0.##"的内容是采用类似于Java中数字格式的语法形式,也就是以上的第三点。 注意: 如果用在一个页面,则整个页面默认就是那种格式,除非用string函数覆盖了默认的格式,同样的,如果放在一个公共的页面,其它页面只要include它,也会是同样的格式。 [b]五、全局设置[/b] 特点: 在所有的页面都默认提供数字的格式化形式 用法 (针对spring):在freemarker的配置文件中设置其默认的数字格式化形式,如下:  代码如下
< property name = "freemarkerSettings" >
     < props>
        .....
       < prop key = "number_format"> 0.## </prop >
        ......
     </props>
</property>
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部