Java中的Unix时间戳到目前为止

时间:2014-06-12 18:35:24

标签: java

我在Java中将Unix时间戳转换为日期的代码:

String s = "1255485965825";
long d = Long.valueOf(s) * 1000L;
str = new java.text.SimpleDateFormat("dd/MM/yyyy").format(new java.util.Date(d));

My output:08/05/2784
Expected Result:10/13/2009

为什么我会得到未来约会和完全错误的结果。请帮助我。谢谢你提前

3 个答案:

答案 0 :(得分:2)

您的输入字符串"1255485965825"似乎已包含毫秒数。因此,您不应该乘以1000

答案 1 :(得分:1)

你乘以1000.从纪元开始已经是毫秒,只是通过了Long.valueOf(s)

答案 2 :(得分:0)

时间戳已经是毫秒,不要乘以1000!

String s = "1255485965825";
long d = Long.valueOf(s);
String str = new java.text.SimpleDateFormat("dd/MM/yyyy").format(new java.util.Date(d));
System.out.println(str);

在这里给出正确的输出。