如何从 FreeMarker 中的即时时间获取日期(例如:星期一)

Ton*_*dez 5 java freemarker date

所以我在Java中得到了这个即时日期:“2018-05-19T22:00:00Z”。

我怎样才能获得星期几?就像星期一..

我正在尝试这个,但它不起作用:

${date?string["EEEE"]}
Run Code Online (Sandbox Code Playgroud)

谢谢

Seb*_*ino 4

Freemarker 不适用于 Instant,因此您需要将其转换为 Java 中的字符串(例如“2018-05-19T22:00:00Z”),然后执行以下操作转换该字符串:

<#setting locale="en_US">
${"2018-05-19T22:00:00Z"?datetime.iso?string["EEEE"]}
Run Code Online (Sandbox Code Playgroud)

首先将字符串转换为 iso 格式的日期时间,然后再次转换回具有您选择的模式的字符串。

通过更改区域设置,您可以获取不同语言的星期几。

我认为在 Freemarker 中工作的最佳方法是始终拥有字符串或整数变量。