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

kin*_*jou 5 java datetime

我有整数形式的时间戳

1333125342
Run Code Online (Sandbox Code Playgroud)

我可以使用SQL转换它:

select DATEADD(ss, FlOOR(1333089223/86400)*86400, '1970-01-01 00:00:00') AS Date  
Run Code Online (Sandbox Code Playgroud)

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

3/30/12 12:18:43 PM
Run Code Online (Sandbox Code Playgroud)

Pet*_*rey 17

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

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

  • `L`代表1000是一个'long`而没有这个你可能会在你的'int`*`int`相乘时得到溢出但是`int`*`long`会导致`long`不会溢出. (3认同)
  • 1333125342*1000是1685480240(由于溢出)1333125342*1000L是1333125342000L (2认同)