Java日期格式的16位时间戳

时间:2014-08-29 10:19:50

标签: java date timestamp type-conversion

我有一个16位数的时间戳来自我无法进入的应用程序。

我想在Java应用程序中使用它。

是否有允许您进行此类转换的功能?

示例:

1409304572565675是2014年8月29日11:29

我发现它可能是一个php毫秒时间戳,但无法找到任何方法将其转换为Java中的日期。

4 个答案:

答案 0 :(得分:2)

如果从纪元(1970年1月1日00:00:000 GMT)起确实毫秒,您只需致电new Date(1409304572565675L)

然而,这似乎是一个微秒的时间戳,即您必须将其除以1000以获得实际的毫秒数,因此new Date(1409304572565675L / 1000)将是您的选择。

答案 1 :(得分:0)

试试这个System.out.println(new Date(1409304572565675L/1000 )); 别忘了时区。

答案 2 :(得分:0)

您可以在 日历 对象上使用 setTimeInMillis()方法:

Calendar c = Calendar.getInstance();
c.setTimeInMillis(temp);

答案 3 :(得分:0)

尝试使用Long.parseLong:

String x = "1086073200000"

DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");

long milliSeconds= Long.parseLong(x);
System.out.println(milliseconds);

Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(milliSeconds);
System.out.println(formatter.format(calendar.getTime()));