zoukankan      html  css  js  c++  java
  • Freemarker 各种格式化

    1、格式化日期

    ${updated?string("yyyy-MM-dd HH:mm:ss")}  

    如果指定的变量不一定存在,可以这样:

    ${(dateMap.beginTime?string("yyyy.MM.dd"))!''}  

    2、显示boolean值

    <#assign foo=true/>  
    ${foo?string("yes", "no")}  

    3、截取字符串长度

    <#if (userVO.cnname)?? && ((userVO.cnname)?length > 10) >  
    ${userVO.cnname?substring(0,10)}..   
    <#else>  
    ${(userVO.cnname)!''}  
    </#if>  

    4、数字格式 
    Freemarker中预订义了三种数字格式:number,currency(货币)和percent(百分比)其中number为默认的数字格式转换 
    例如:

    <#assign tempNum=20>
    ${tempNum}    
    ${tempNum?string.number}或${tempNum?string(“number”)}  结果为20
    ${tempNum?string.currency}或${tempNum?string(“currency”)}  结果为¥20.00
    ${tempNum?string. percent}或${tempNum?string(“percent”)}  结果为2,000%

     freemarker数字格式化可以在两个地方设置,一个是全局的,即在freemarker.properties文件中设置number_format,还有一个是使用string指令来控制数据的输出格式。例如:

     
    ${num?string('0.00')}

     如果小数点后不足两位,用 0 代替

    ${num?string('#.##')}
     
     
    如果小数点后多余两位,就只保留两位,否则输出实际值
    输出为:1239765.46
    ${num?string(',###.00')}

     输出为:1,239,765.46

    整数部分每三位用 , 分割,并且保证小数点后保留两位,不足用 0 代替
     
    ${num?string(',###.##')}

     输出为:1,239,765.46

    整数部分每三位用 , 分割,并且小数点后多余两位就只保留两位,不足两位就取实际位数,可以不不包含小数点
     
    ${num?string('000.00')}

     输出为:012.70

    整数部分如果不足三位(000),前面用0补齐,否则取实际的整数位
     
    ${num?string('###.00')}
    等价于
    ${num?string('#.00')}

     输出为:12.70

    整数取实际的位数
  • 相关阅读:
    15道简单算法题
    提高SQL查询效率
    算法--两道百度笔试题
    .NET牛人应该知道些什么?
    VS创建、安装、调试 windows服务(windows service)
    Build System 和Test Framework overview总结
    3.8 Templates -- Actions
    3.7 Templates -- Links
    3.6 Templates -- Binding Element Class Names(绑定元素类名)
    3.5 Templates -- Binding Element Attributes(绑定元素属性)
  • 原文地址:https://www.cnblogs.com/hwaggLee/p/4653766.html
Copyright © 2011-2022 走看看