我有一个字符串" 21-SEP-15 02.48.48.000000000 AM UTC"代表utc时间戳,我有" 2015-10-08T20:13:21.3Z" format string表示另一个时间戳。如果它们相等,我如何比较它们?
答案 0 :(得分:2)
第二种格式使用ISO约定,因此可以轻松解析。
第一个解析起来有点复杂,特别是因为月份是大写的。
一种方法是:
String ts1 = "21-SEP-15 02.48.48.000000000 AM UTC";
String ts2 = "2015-10-08T20:13:21.3Z";
DateTimeFormatter fmt1 = new DateTimeFormatterBuilder()
.parseCaseInsensitive()
.appendPattern("dd-MMM-yy hh.mm.ss.SSSSSSSSS a VV")
.toFormatter(Locale.ENGLISH);
Instant d1 = ZonedDateTime.parse(ts1, fmt1).toInstant();
Instant d2 = Instant.parse(ts2);
然后,您可以将这两个时刻与d1.equals(d2)
进行比较。