【发布时间】:2016-03-30 18:38:17
【问题描述】:
如果我这样做:
ZonedDateTime.now().format(DateTimeFormatter.BASIC_ISO_DATE)
它返回一个String,而我希望它返回一个ZonedDateTime 对象。有没有一种干净的方法可以做到这一点。这是显而易见的解决方案:
ZonedDateTime.parse(ZonedDateTime.now().format(DateTimeFormatter.BASIC_ISO_DATE));
有没有更简单的方法来做到这一点?这似乎有点太冗长了。
【问题讨论】:
-
哼,
ZonedDateTime.now()呢? -
ZonedDateTime没有格式。你要的只是ZonedDateTime.now()。 -
是的,但我想将其格式化为任何我想要的格式。我可以选择任何
DateTimeFormatter,它会根据该格式返回。我已经用多种格式对此进行了测试,并根据我选择的格式获得了多个返回值 -
@Richard 听起来您没有区分
ZonedDateTime和格式化输出。您应该在程序内部使用ZonedDateTime而不使用任何格式,然后在需要将其传递到程序外部或将其公开给用户时使用DateTimeFormatter。 -
这个问题和下面的问题有区别吗:stackoverflow.com/questions/36311293/…
标签: java datetime java-8 datetime-format