2017-01-19 6 views
-2

Я создаю приложение чата, и я хочу печатать дату и время в чате, когда сообщение отправлено или получено.Convert Epoch или временная метка Unix на сегодняшний день ANDROID

Я использовал приведенный ниже код, чтобы получить и преобразовать дату и время.

long itemLong = (long) (chatMessage.getTime()*1000); 
    Date itemDate = new Date(itemLong); 
    String itemDateStr = new SimpleDateFormat("dd-MMM HH:MM").format(itemLong); 
    holder.time.setText(itemDateStr); 

Переменная itemLong получает значение 1.4847986E15, который преобразуется в дату и временную метку в формате я упоминается в SimpleDateFormat, но eveytime некоторые случайные дата и время получает отображается не при которой сообщение было отправлено или получено.

Я пробовал различные решения, но я не могу получить правильную дату и время. Любая помощь приветствуется.

+0

Почему вы умножаетесь на 1000, дает ли getTime наносекунды? –

+0

@AnkushBist Я попробовал решение. Но это не работает для меня. :( – Rider

+0

@Rider, что не работает в этом. Будьте точны. – Gattsu

ответ

0

Отредактировано код этого и его рабочего режима.

long itemLong = (long) (chatMessage.getTime()/1000); 
    java.util.Date d = new java.util.Date(itemLong*1000L); 
    String itemDateStr = new SimpleDateFormat("dd-MMM HH:mm").format(d); 
    holder.time.setText(itemDateStr);