У меня есть этот миллис в длину:
1570046362841
при конвертации с версия 1 :
var myDate = ZonedDateTime.ofInstant(Instant.ofEpochSecond(1570046362841), ZoneId.of("America/New_York"));
Я получу этот результат (что неверно! ):
+51722-10-16T03:58:54-04:00[America/New_York]
Однако при конвертации с версия 2 :
final String dateFormat = "yyyy-MM-dd HH:mm:ss SSS";
SimpleDateFormat formatter = new SimpleDateFormat(dateFormat);
formatter.setTimeZone(TimeZone.getTimeZone("America/New_York"));
var dateObj = new Date(1570046362841);
var myDate = formatter.format(dateObj);
я получаю правильный результат:
2019-10-02 15:59:59 934
Почему версия 1 неверна? Что не так в версии 1?