freemarker常用的值格式化方法:

1、${price?string('0.00')}

对price进行格式化,小数点后不足2位用0补足。

比如:price=1

输出:1.00

2、${price?string('#.##')}

对price进行格式化,小数点后多余2位只保留2位,少于2位显示实际位数。

比如:price=1.234

输出:1.23

3、${price?string.currency}

对price进行格式化,显示为货币格式。

比如:price=1

输出:¥1.00

4、${price?string.percent}

对price进行格式化,显示为百分比。

比如:price=1

输出:100%

1.if-else常用

<#if signStatus??> //如果signStatus值存在
   <#if signStatus=='2'>是<#else>否</#if> <#else> 否
</#if>

2.时间格式化

时间戳转日期

  ${time?number_to_datetime}

  ${time?number*1000} 时间戳乘1000

日期格式化

  ${dateTime?string('yyyy-MM-dd hh:mm:ss')}   格式化为 2020-11-12 15:05:29

  ${dateTime?string('yyyy-MM-dd ')}   格式化为 2020-11-12

3.数值格式化

数值如果有小数保留两位小数,否则补0两位,例如128.81, 688则为 688.00

${((totalInvoice.amount)!0)?string('###,##0.00')}
另外,
 1 ${num?string('0.00')}2 如果小数点后不足两位,用 0 代替3 4 ${num?string('#.##')}5 如果小数点后多余两位,就只保留两位,否则输出实际值6 输出为:1239765.467 8 ${num?string(',###.00')}9 输出为:1,239,765.46
10 整数部分每三位用 , 分割,并且保证小数点后保留两位,不足用 0 代替
11
12 ${num?string(',###.##')}
13 输出为:1,239,765.46
14 整数部分每三位用 , 分割,并且小数点后多余两位就只保留两位,不足两位就取实际位数,可以不不包含小数点
15
16 ${num?string('000.00')}
17 输出为:012.70
18 整数部分如果不足三位(000),前面用0补齐,否则取实际的整数位
19
20 ${num?string('###.00')}
21 等价于
22 ${num?string('#.00')}
23 输出为:12.70
参考https://blog.csdn.net/qq_32534855/article/details/67631788

4.list迭代

1 <#list 0..(bigTypeList!?size-1) as i>
2    <#if bigTypeList[i].code==settleCheckBillVO.bigType>
3         ${bigTypeList[i].name}
4    </#if>
5  </#list>

5.数值为空导致的报错的处理方式

添加以下红色的部分,当为对象时需要加括号(一些可能为空的数据需要这么处理)
${saleUnifiedIdentityCode!""}
${((totalInvoice.amount)!0)?string('###,##0.00')}
 1 <#if receiptVOList?size != 0>2         <div style="font-size: 16px;3     font-weight: bold;padding:10px 0">匹配通过收据明细 <span style="margin-left: 20px">共${(receiptVOList)?size!0}张</span></div>4         <table width="100%" border="0" cellspacing="0" cellpadding="0" class="tb">5             <tr>6                 <td width="16%" class="tl" style="border-width: 1px 1px 1px 1px">发票类型</td>7                 <td width="10%" class="tc" style="border-width: 1px 1px 1px 0">开票日期<i></i></td>8                 <td width="12%" class="tc" style="border-width: 1px 1px 1px 0">收据编号<i></i></td>9                 <td width="12%" class="tc" style="border-width: 1px 1px 1px 0">含税金额<i></i></td>
10                 <td width="26%" class="tc" style="border-width: 1px 1px 1px 0">备注<i></i></td>
11             </tr>
12
13             <#if receiptVOList?size != 0>
14                 <#list 0..(receiptVOList!?size-1) as i>
15                     <tr class="<#if i%2==0>space</#if>"
16                         style=" <#if (receiptVOList[i].totalAmount<0)>color: red</#if>">
17                         <td class="tl" style="border-width: 0px 1px 1px 1px"><p>收据</p></td>
18                         <td class="tc" style="border-width: 0px 1px 1px 0px">
19                             <p>${(receiptVOList[i].openInvoiceTime?number_to_datetime)?string('yyyy-MM-dd')!}</p></td>
20                         <td class="tc" style="border-width: 0px 1px 1px 0px"><p>${receiptVOList[i].billNo!}</p></td>
21                         <td class="tc" style="border-width: 0px 1px 1px 0px">
22                             <p>${((receiptVOList[i].totalAmount)!0)?string('###,##0.00')}</p></td>
23                         <td class="tc" style="border-width: 0px 1px 1px 0px"><p>${(receiptVOList[i].remark)!}</p></td>
24                     </tr>
25                 </#list>
26             </#if>
27         </table>
28     </#if>

6.字符串操作函数(参考下面,即可大概清楚ftl中函数如何使用)

${“strabg”?replace(“ab”,”in”)} 结果为string  
${“string”?contains(“ing”)?string} 结果为true  
注意:布尔值必须转换为字符串才能输出  
${“string”?index_of(“in”) 结果为3 
${“string”?index_of(“ab”) 结果为-1 
length返回字符串的长度 ${“string”?length}结果为6 
lower_case将字符串转为小写  
${“STRING”?lower_case}à结果为string  
upper_case将字符串转为大写  
${“string”?upper_case}à结果为STRING  
ends_with 判断某个字符串是否由某个子串结尾,返回布尔值。  
${“string”?ends_with(“ing”)?string} 返回结果为true

ftl常用数值格式化相关推荐

  1. HighCharts日期及数值格式化

    1.函数原型 1 dateFormat(Stringformat,[Numbertime],[Booleancapitalize])::String 2.说明 格式化JavaScript 时间(也就是 ...

  2. python常用字符串格式化_Python字符串格式化常用手段及注意事项

    Python字符串格式化常用手段及注意事项 格式化方式1: 使用f"" 使用示例 # -*- coding: utf-8 -*- # @Time : 2020/4/22 22:35 ...

  3. HTML基础:常用文本格式化标签(换行,加横线,加粗,斜体字等)

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.常用文本格式化标签 二.演示 1.代码演示 2.效果演示 总结 前言 HTML 使用标签 <b>(&q ...

  4. 【Java基础系列教程】第十四章 Java 包装类、日期与日期格式化类、数值格式化等常用类详解

    一.包装类 1.1 什么是包装类 Java中的数据类型分为基本数据类型和引用数据类型,其中基本数据类型是不具有对象特征的,也就是说它们不能像对象一样拥有属性和方法,以及对象化交互.           ...

  5. c语言中格式化字符串系列函数包括,解析C语言中常用的格式化输入、输出函数...

    fprintf(格式化输出数据至文件) 这个函数的功能类似于文件操作函数 fwrite();通过一个文件描述符将数据写入该文件描述符所指向的文件中. 函数定义: int fprintf(FILE * ...

  6. python数字保留两位_Python 鲜为人知的数值格式化

    大家在工作的时候经常用到的字符格式化,今天就总结一下: 微信公众号:zeropython Last login: Wed Jan 9 10:06:43 on ttys000 ➜ ~ ipython3 ...

  7. Windows10下VB6.0开发——常用数值处理函数工具

    前言:下面记录整理了VB中经常使用用于数据转换的工具函数. 数值处理 1. 取不大于n的最大整数--Int a = Int(-5.6) '=-6 a = Int(4.88) '=4 2. 四舍五入取整 ...

  8. excel图文教程:常用数值取舍方法汇总

    当计算结果为小数时,我们通常会对其小数位进行取舍,以得到符合我们要求的数据.对于数值的取舍,不仅有数学中的四舍五入法,还有向上.向下.截尾的方式取舍数据. 一.舍入到最接近基数的整数倍 1.向上舍入到 ...

  9. Python中常用的格式化字符串方法

    下面写了下我所了解的三种格式化字符串方法,推荐第三种 第一种方式: 常用'%s'.'%f'.'%d'. 符号 描述 %s 格式化为字符串,采用 str() 显示 %r 格式化为字符串,采用 repr( ...

最新文章

  1. 那些年,我在游戏开发中改过的bug:靠不住的OS和SDK
  2. redis(22)--二进制位数组
  3. 【2017年第1期】大数据能力开放平台创新和发展
  4. Jsp Servlet 个人博客
  5. ORACLE中exists与in的区别
  6. 《敏捷可执行需求说明 Scrum提炼及实现技术》—— 3.1 运用试错法
  7. kylin基础概念和基础性能优化
  8. Photoshop CC 2018 软件安装包+破解教程(转)
  9. 主板检测卡c5_主板诊断卡怎么使用 主板诊断卡代码含义及处理方法
  10. [转载]AutoCAD2013 以上利用AccoreConsole+ c# NetApi 批量处理图纸
  11. QL-Emotion(FDD3.0)教程
  12. 【电脑运用及修理】固态硬盘跟机械硬盘有什么区别?
  13. 随心情更新的学习笔记——JS代码之栈的佩兹的糖果盒
  14. NATPort ForwardingPort Triggering
  15. JDK17的下载安装与配置(详细教程)
  16. 解决win10/Office2016/Onedrive/上载中心经常冲突的问题
  17. domoticz用手机摄像头实现家庭监控
  18. 工业机器人码垛教学实施_码垛教学在ABB工业机器人的教学应用
  19. asyncio异步IO--协程(Coroutine)与任务(Task)详解
  20. 支付宝小程序使用扩展组件安装

热门文章

  1. 2019SUSCTF安德门
  2. 人脸识别的时候,一定要穿上衣服,否则 ...
  3. 2节点弹性梁的稳定性分析(弹性基础)(python,有限元)
  4. QA200RC 开发者套件配置虚拟机开发环境(PC端)
  5. 【信奥赛一本通】1184:明明的随机数(详细代码)
  6. GY-US42超声波传感器模块介绍
  7. bat批处理之启动多个PC端微信
  8. 储能之动力电池与储能电池区别?
  9. [译] 如何从一个业余爱好者成长成为专业开发者
  10. Nginx之IP国家代码ngx_http_geoip2_module模块简介和使用