问题描述
让我们假设我的客户时间在我的数据库中保存为2020-09-22T10:50:37.276240900
我需要根据客户端时区在客户端应用程序的Web服务中显示此日期,例如,如果客户端居住在UTC + 2时区,则需要向保存的日期添加2小时。
那我要做什么?
从实体获取日期并将时区添加到从数据库(startDate: LocalDateTime
)获取的时间中
entity.startDate.atZone(ZoneId.of("Europe/Vienna"))
什么给了我ZonedDateTime
2020-09-22T10:50:37.276240900+02:00[Europe/Vienna]
的价值
这个值是我所期望的,基本上是“初始时间加2小时”。之后,我要格式化这一次,以便在添加了这两个小时后输出,这种方式
12:50 22.09.2020
但是当我这样做时
entity.startDate
.atZone(ZoneId.of("Europe/Vienna"))
.format(DateTimeFormatter.ofPattern(NotificationListener.EUROPEAN_DATE_FORMAT,Locale.ENGLISH))
其中const val EUROPEAN_DATE_FORMAT = "HH:mm dd.MM.yyyy"
我得到的输出10:50 22.09.2020
似乎没有正确应用我的格式,所以我看不到我的2个小时。
所以我的问题是:
- 我正确地以所述方式添加客户端应用的时区吗?
- 如何以更精确的方式应用时区并格式化此日期以查看所应用的时区?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)