我正在尝试将字符串转换为 Instant。你能帮帮我吗?
我得到以下异常:
Caused by: java.time.temporal.UnsupportedTemporalTypeException: Unsupported field: InstantSeconds at java.time.format.Parsed.getLong(Parsed.java:203) at java.time.Instant.from(Instant.java:373)
我的代码基本上是这样的
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String timestamp = "2016-02-16 11:00:02";
TemporalAccessor temporalAccessor = formatter.parse(timestamp);
Instant result = Instant.from(temporalAccessor);
我正在使用 Java 8 更新 72。
最佳答案
更简单的方法是在声明时将默认时区添加到格式化程序对象
final DateTimeFormatter formatter = DateTimeFormatter
.ofPattern("yyyy-MM-dd HH:mm:ss")
.withZone(ZoneId.systemDefault());
Instant result = Instant.from(formatter.parse(timestamp));
关于java - 将字符串时间戳解析为即时抛出不受支持的字段 : InstantSeconds,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35610597/