【问题标题】:Snowflake timestamp conversion in java 8 [duplicate]java 8中的雪花时间戳转换[重复]
【发布时间】:2021-09-22 07:25:48
【问题描述】:

我从以下格式的雪花中获取日期

2021-07-13 00:00:00.000 -0600

我应该使用什么字符串格式将其转换为 java 8 LocalDateTime?

【问题讨论】:

  • 你检查过解析格式的文档吗?或者看看其他例子?
  • 当有-0600 的偏移量时,为什么要LocalDateTime?使用OffsetDateTime 并使用DateTimeFormatter.ofPattern("uuuu-MM-dd HH:mm:ss.SSS x") 解析它。之后你可以从OffsetDateTime中提取一个LocalDateTime,有一个方法.toLocalDateTime()
  • 正如@deHaar 已经发现的那样,LocalDateTime 被过度使用并且不适合您在这里使用。您想要哪个时区的结果?如果该问题有答案,请转换为ZonedDateTime。它为您提供LocalDateTime 可以为您提供的一切以及更多。如果您对字符串的 UTC 偏移量(示例中为 -0600)感到满意,只需解析为 OffsetDateTime

标签: java java-time snowflake-schema


【解决方案1】:

使用yyyy-MM-dd HH:mm:ss,SSS ZZZZ

【讨论】:

  • 详细信息,您可能想要在ssSSS 之间使用点而不是逗号。否则我相信它是正确的。
猜你喜欢
  • 1970-01-01
  • 2021-08-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-10
  • 2019-06-05
  • 2015-09-15
  • 2022-07-27
相关资源
最近更新 更多