2010-11-11 176 views
1

考虑followign代码:将毫秒数值转换为日期?

public void convertTime() 
{ 
    DateFormat df = new SimpleDateFormat(dateFormat); 
    Date date; 
    Date date2; 

    date = df.parse("15/01/2010 21:58:54"); 
    date.getTime();      //produces 1263585534000 

    date2 = new Date(date.getTime()); //this is ok, compiles 
    date2 = new Date(1263585534000); //gives an error: The literal 1263585534000 of type int is out of range 
} 

我不知道如何可以将这个长数字变成日期格式,为什么会出现这个错误?

谢谢

回答

8

1263585534000大于2^31-1。使用L来表示Long。

date2 = new Date(1263585534000L); 
+0

谢谢你的答案! – 2010-11-11 14:28:28

3
date2 = new Date(1263585534000L); 

与L-长期字面结束,以表明它是一个长的数字。