Threeten中now()的时间格式是什么?

What's the time format of now() in Threeten?

我使用 ThreeTen 模块,当我打印 ZonedDateTime.now() 时,我得到了。

2019-07-11T22:43:36.564-07:00[America/Los_Angeles]

这是什么格式? 我试过 uuuu-MM-dd'T'HH:mm:ss.SSS'Z',它说,

org.threeten.bp.format.DateTimeParseException: Text '2019-07-11T22:43:36.564-07:00[America/Los_Angeles]' could not be parsed at index 23

所以,在SSS之后,'Z'部分是不正确的。

实施它的正确方法是什么?

这是我的代码:

val pstTime = ZonedDateTime.now(ZoneId.of("America/Los_Angeles")).toString()
val timeFormatter = DateTimeFormatter.ofPattern("uuuu-MM-dd'T'HH:mm:ss.SSS'Z'")
val mTime = LocalDateTime.parse(pstTime, timeFormatter).toString()
tv_pstTime.text = mTime

我想把它解析成类似Tuesday, July 2 5:15:01 P.M.的格式 我该怎么做?

您可以使用 DateTimeFormatter.ofPattern("....")。在.ofPattern("....")里面你可以有任何你想要的图案。

像这样:

val result = ZonedDateTime.now(ZoneId.of("America/Los_Angeles"))
                          .format(DateTimeFormatter.ofPattern("EEEE, MMMM d HH:mm:ss a"))

输出:Thursday, July 11 23:51:21 PM