【问题标题】:Joda - Print DateTime ignoring TimeZonesJoda - 打印日期时间忽略时区
【发布时间】:2015-04-29 10:22:39
【问题描述】:

我有两个时间戳:

  • 2015-03-30T00:36:00.000+0100
  • 2015-03-30T00:36:00.000+0200

只有时区不同。在使用DateTimeFormatter 解析此时间戳并使用DateTimeFormat.shortTime() 仅打印时间(不含日期)之后。 结果是:

  • 00:36
  • 23:36

由于对我而言只有时间很重要,所以我想在打印时间时忽略这些时区。如何实现两个时间戳的打印00:36

【问题讨论】:

标签: java android jodatime


【解决方案1】:

您使用固定长度格式,因此您可以简单地执行此操作:

LocalDateTime ldt = LocalDateTime.parse(input, ISODateTimeFormat.dateTimeParser());
System.out.println(ldt.toLocalTime().toString(ISODateTimeFormat.hourMinute()));
// output: 00:36

我使用LocalDateTime 是因为您对时区偏移不感兴趣。

【讨论】:

  • 对我来说似乎有点 hacky。但是你给我指明了正确的方向。 DTF.parseLocalDateTime 完成这项工作。
  • @Sebastian 你是对的,看看我的更新。我发现存在一个预定义的格式化程序,它使用一个可选的偏移部分(名称不太清楚)。
猜你喜欢
  • 1970-01-01
  • 2013-10-20
  • 1970-01-01
  • 1970-01-01
  • 2017-12-07
  • 1970-01-01
  • 2014-01-09
  • 2018-01-25
  • 2011-09-02
相关资源
最近更新 更多