"DateUTC" 最准确的 joda 时间表示是什么?

What is the most accurate joda-time representation for "DateUTC"?

到目前为止,我们一直在使用 joda-time class DateTime 来表示具有 UTC 时区的日期时间数据,这很好地满足了我们的要求。

示例:2014-11-07T14:10:00Z

现在,我们需要表示 "date" 数据(在 UTC 时区)。

示例:2014-11-07

存在一个 LocalDate joda-time class,以及一个从 DateTime 通过 DateTime.toLocalDate() 转换的方法。

我寻找了一个 joda-time class,我认为它会存在 DateUTC - 但它似乎不存在!

有人能给我指出正确的方向吗,或者实际上指定什么是最好的 joda-time class 来表示 "date-UTC" 数据(没有时间戳)?

P.s。我们还没有准备好迁移到 java 8,因为我们有很多代码使用 joda-time 库

如果您的 DateTime 对象采用 UTC,如果您不关心时间,将其转换为 LocalDate 就可以了。如果它还不是 UTC,您可以使用 DateTime.withZone(DateTimeZone.UTC).toLocalDate()

将其转换为 UTC

LocalDate 仅表示日期部分,没有时区信息。因此,只要您保持一致,您的代码就可以使用它并假定它是 UTC。对于字符串表示,您可以使用 LocalDate.toString().

但是,如果您只想格式化现有的 DateTime 对象,以便字符串表示形式仅显示日期部分,则您不需要使用 LocalDate。只需将其格式化为仅显示日期:DateTime.toString("yyyy-MM-dd").