将整数时间戳转换为java日期

时间:2012-05-07 06:34:45

标签: java datetime

我有以整数形式的时间戳

1333125342

我可以使用SQL转换它:

select DATEADD(ss, FlOOR(1333089223/86400)*86400, '1970-01-01 00:00:00') AS Date  

如何在java中转换它?这样它就会返回值:

3/30/12 12:18:43 PM

3 个答案:

答案 0 :(得分:17)

假设自1970年1月1日以来的时间以秒为单位。你可以尝试

String dateAsText = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
                          .format(new Date(1333125342 * 1000L));

答案 1 :(得分:2)

如果是毫秒,则值表示自January 1, 1970 00:00:00.000 GMT以来经过的毫秒数

然后只需使用

new java.util.Date(millis);

如果您需要特定格式

3/30/12 12:18:43 PM

然后使用SimpleDateFormatDate格式化为所需的格式String

答案 2 :(得分:0)

该时间戳记包含自1970-1-1 0:00 UTC以来经过的秒数。

要将其转换为Java Date,请实例化新的Date对象(see Java doc)并在其上调用setTime()。请注意,setTime需要毫秒而不是秒,因此您必须将时间戳乘以1000。

toString()方法产生可读性。