java - 如何获取这一天(例如 : Monday) from a time Instant in FreeMarker

标签 java date freemarker

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

如何获取星期几?就像星期一一样..

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

${date?string["EEEE"]}

谢谢

最佳答案

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

<#setting locale="en_US">
${"2018-05-19T22:00:00Z"?datetime.iso?string["EEEE"]}

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

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

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

关于java - 如何获取这一天(例如 : Monday) from a time Instant in FreeMarker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50384953/

相关文章:

java - StringBuilder 与 StringBuffer - 需要助记符

java - 将 java.util.Date 转换为 java.sql.Date 导致日期更改

java - 尝试从字符串到日期解析时出现 ParseException

java - 如何使用 SpringTemplateLoader 而不是 FiletemPlateLoader 配置 Freemarker

java - 在Java中创建自定义类,id是保留的还是可以在自己的类中使用id?

java - 使用maven构建geoserver(monitor-hibernate)

freemarker - Freemarker 模板 : how to assign values having double quotes

java - 导入 freemarker 宏

java - 在 Java 中,是否有某种类接口(interface)强制其实现类具有特定字段

angular - 如何使用 Angular 5 中的数据绑定(bind)设置日期输入字段的值?