添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

Freemarker的语法还是有点让人不舒服,写了个格式化时间的输出,找了好半天才写好,难受。
Snipaste_2018-12-29_10-44-19.png

References:

需求如上图所示,先给出成品代码,再说下过程。

<tr>
    <td >Trading Status:<br/>交易状态</td>
        ${ status! } ${ ("(" + recResponseTime?string["MMM dd,yyyy"] + ")")! }
</tr>

可以看到比较长,但是细细看还是能看懂的。
一步一步来,
取值
${ recResponseTime }
这个值是格式化时间,按照“MMM dd,yyyy”的格式展示时间,具体格式可以参考各种文档
${ recResponseTime?string["MMM dd,yyyy"] }
由于这个值可能为null,需要空值判断,如果值为null,展示也为空字符串。这一个判断需要注意,!是放在最外面的。
${ (recResponseTime?string["MMM dd,yyyy"])! }
外面包上括号
${ ("(" + recResponseTime?string["MMM dd,yyyy"] + ")")! }
其实本来到此就该结束了,但是展示的时间确是和区域(Locale)有关的。结果这里的月份就显示了中文,所以需要额外处理下区域的问题,可以在代码中设置(推荐),也可以直接在模板里指定,不推荐这么做,但我这里偷懒,直接在模板里写了,反正也没有其他的区域需求。
设置下Locale为英文
<#setting locale="en_US">
就可以展示需求的时间格式了。

标签: none

已有 2 条评论

  • January 2023
  • December 2022
  • June 2022
  • May 2022
  • April 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • August 2021
  • July 2021
  • May 2021
  • April 2021
  • March 2021
  • January 2021
  • November 2020
  • October 2020
  • September 2020
  • August 2020
  • July 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • October 2019
  • September 2019
  • August 2019
  • July 2019
  • June 2019
  • April 2019
  • March 2019
  • February 2019
  • January 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
  • January 2018
  • December 2017
  • November 2017
  • October 2017
  • September 2017
  • August 2017
  • July 2016
  • January 2000
  •