System.currentTimeMillis() выдает неправильный результат

175
15 августа 2021, 09:10

Доброго времени суток!

System.currentTimeMillis() в Java выдает неправильный результат.

То есть по логам выдает 1569633070510,что не является действительностью. Но, если отсечь три последние цифры (510),то результат становится достоверным.

Подскажите,пожалуйста,откуда он берет эти лишние цифры и как можно убрать их?

Answer 1

Это и есть миллисекунды. Только Вы их перепутали с секундами.

1569633070510 / 1000 / 3600 / 24 / 365.25 = 49.74 (почти 50 лет с 1-го января 1970 года) 
Answer 2

Используйте класс java.sql.Date:

Date currentDate = new Date(System.currentTimeMillis());

переведет в текущую дату - все ровно должно быть..

READ ALSO
Как сделать редирект при logout'е?

Как сделать редирект при logout'е?

Я написал приложение с использованием spring bootДобавил авторизацию:

302
Вопрос по ООП java

Вопрос по ООП java

Есть основной класс Main и класс Person в классе Person есть метод draw(), что-бы исползовать этот метод в классе Main надо создать объект Person maks = new Person()...

273
Ошибки после выполения

Ошибки после выполения

Задача на java: написать программу, что будет выводить все дни твоего рождения на 5 лет вперед двумя способами: просто все в main, что изи, и с помощью...

317
Трассировка стека исключений в Java

Трассировка стека исключений в Java

Метод fillInStackTrace(), реализованный в классе Throwable позволяет получить объект типа Throwable, с сохранением трассировки стека вызывающего объекта...

307