Tôi tạo ra phương pháp tĩnh tuyệt vời này ngày hôm qua, và nó chỉ làm việc tốt - hôm quaParsing ISO_INSTANT và ngày tương tự như Time Strings
Tuy nhiên, ngày nay nó mang lại cho tôi lỗi này. Tôi đoán nó là quá nhiều 0s trước khi Z.
Bất kỳ ai cũng có thể giới thiệu cách phân tích cú pháp theo cách ngắn gọn (Java 8) kiểu này là String
ngày định dạng - lưu ý rằng nó hoạt động ngày hôm qua quá, vì vậy ISO_INSTANT
cũng định dạng hợp lệ cho String
?
Caused by: java.time.DateTimeException: Unable to obtain LocalDate from TemporalAccessor: {NanoOfSecond=0, InstantSeconds=1443451604, MilliOfSecond=0, MicroOfSecond=0},ISO of type java.time.format.Parsed
at java.time.LocalDate.from(LocalDate.java:368)
at java.time.LocalDateTime.from(LocalDateTime.java:456)
... 9 more
ném một ngoại lệ về thời gian đầu vào: "2015-09-28T14: 46: 44.000000Z"
/**
*
* @param time the time in RFC3339 format (e.g. "2013-07-03T14:30:38Z")
* @return
*/
public static LocalDateTime parseTimeINSTANT(String time) {
DateTimeFormatter f = DateTimeFormatter.ISO_INSTANT;
return LocalDateTime.from(f.parse(time));
}
ISO_INSTANT không hỗ trợ các múi giờ, có thể được cố định với một cái gì đó như: 'Instant.from (DateTimeFormatter.ISO_DATE_TIME.parse ("2017-04-20T00: 00: 00 + 04: 00 "))' –