将Epoch或Unix时间戳转换为日期ANDROID

时间:2017-01-19 05:11:27

标签: android date timestamp

我正在创建一个聊天应用程序,我想在发送或接收消息时在聊天气泡中打印日期和时间。

我使用以下代码来获取和转换日期和时间。

   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会显示一些随机日期和时间,而不是显示消息的发送或接收。

我尝试了各种解决方案,但我无法获得正确的日期和时间。 任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:1)

编辑此代码及其工作正常。

 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);