• 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

    整数取实际的位数
  • 相关阅读:
    【zookpeer】Failed to check the status of the service com.xxx.UserSerivce. No provider available for
    【solr】Spring data solr Document is missing mandatory uniqueKey field: id 解决
    【ssm】springmvc-spring-mybatis框架的搭建
    【jdbc】jdbc连接池理解
    【java基础】接口的理解
    【java基础】private protect的理解
    Single Number II
    Single Number I
    Candy
    Gas Station
  • 原文地址:https://www.cnblogs.com/hwaggLee/p/4653766.html
Copyright © 2020-2023  润新知