2011-08-10 13 views
0

值(可否请您在下面的事情帮助:出错转换的getTime),以毫秒为单位

我有在显示一个错误是,当我转换成毫秒,它会显示错误的价值观。 Iam在Java中使用getTime()。

我的代码是:

Time absent = rs.getTime("abs_hours"); 
long absent_cumm= (absent.getTime()); 

out.println(absent); // This will display 00:04:00 which is correct 

但是当我打印absent_cumm

out.println(absent_cumm);// This will display -10560000 which is wrong 

如何将缺席值转换成毫秒转换?

+0

让我澄清一下:你要显示的时间从一天的开始毫秒( 00:00:00.000)? –

+0

我想显示的结果为4毫秒为240000毫秒 – maas

回答

2

嗯,这里是可以工作至少一种方式:

Time time = Time.valueOf("00:04:00"); // replace with rs.getTime() 
Calendar cal = Calendar.getInstance(); 
cal.setTime(time); 
int hour = cal.get(Calendar.HOUR); 
int minute = cal.get(Calendar.MINUTE); 
int second = cal.get(Calendar.SECOND); 
int ms = (hour * 3600 + minute * 60 + second) * 1000; 
System.out.println("ms: " + ms); 

应该正确打印“MS:240000”

+0

它显示一个错误---时间time1 = Time.valueOf(rs.getTime(“abs_hours”)); java.sql.Time中的valueOf(java.lang.String)不能应用于(java.sql.Time) – maas

+0

'Time.valueOf()'期望'String'。 'rs.getTime()'已经返回'Time'对象。 –

+0

谢谢你的工作 – maas

相关问题