【发布时间】:2017-12-08 01:14:12
【问题描述】:
我正在使用基于 Stringtemplate4 (ST) 的 ExcelExplorer 处理 Excel 文件。 这些文件包含几个带有日期的列。 默认情况下,日期按照“MM/dd/yy”日期格式呈现。
有没有办法将日期呈现为“dd/MM/yyyy”?
我尝试了多种方式:
- 我尝试通过命令行定义它,但没有成功。
- 定义 LC_ALL=fr_FR 不起作用。
- 定义 LC_TIME="dd/MM/yyyy" 不起作用。 见Setting java locale settings
- 使用以下命令行选项调用 java 不起作用。
java -Duser.language=fr -Duser.country=FR -Duser.variant=UTF-8 ...
我尝试了以下模板但没有成功:
renderRow(row) ::= <<
<row.MyDate; format="dd/MM/yyyy">
>>
虽然属性 MyDate 被定义为 Date 类型,但上述不起作用。我不想按照Format date in String Template email 中的建议将 MyDate 定义为 Java 中的 Date 类型
注意:经过检查,我发现 ExcelExporter/ST 将属性 MyDate 定义为 Date 类型!
以下模板也不起作用:
renderRow(row; format="dd/MM/yyyy") ::= <<
<row.MyDate>
>>
【问题讨论】:
-
看完[Format date in String Template email] (stackoverflow.com/questions/2728623/…)的文章后,解决这个问题的正确方法是在java中添加一个属性方法,同时保持模板不变。该解决方案严格保持模型视图分离。
标签: java excel date date-format stringtemplate-4