是否有可能构造一个java.time.DateFormatter,使以下内容等价?
Instant instant = Instant.ofEpochMilli(System.currentTimeMillis());
assert instant.equals(Instant.now);
String str = String.valueOf(instant.toEpochMilli());
Instant instant = Instant.from(formatter.parse(String.valueOf(System.currentTimeMillis())));
assert instant.equals(Instant.now);
String str = formatter.format(instant);当你的文字输入使用时,不得不使用特例似乎是一种耻辱。
发布于 2016-03-17 19:16:11
如果您知道您的日期是合理最近的(自该时代以来的秒数超过1),则可以使用此格式化程序:
new DateTimeFormatterBuilder()
.appendValue(ChronoField.INSTANT_SECONDS, 1, 19, SignStyle.NEVER)
.appendValue(ChronoField.MILLI_OF_SECOND, 3)
.toFormatter();否则,它会变得有点棘手,您最好直接解析长值:
Instant instant = Instant.ofEpochMilli(Long.parseLong(millisString))
System.out.println(instant.toEpochMilli());https://stackoverflow.com/questions/36066155
复制相似问题