2014-05-23 151 views
1

我有兩個時間戳之間查找的時間間隔:兩個時間戳

Timestamp loggedintime=rs.getTimestamp("LOGIN_TIME"); 
Timestamp loggedouttime=rs.getTimestamp("LOGOUT_TIME"); 

現在,我試圖做的是,找到一個像15分鐘或1小時10分鐘等

這兩個時間戳之間的時間間隔

但我沒有的IDE如何能done.So請幫我

+0

我不知道問題是什麼。你是說你不知道如何使用'getTime()'然後做減法來給你毫秒?或者你是否說你不知道如何將時間間隔轉換爲數字和文字,比如「15分鐘」? –

回答

0

在這裏你去,

Timestamp loggedintime=rs.getTimestamp("LOGIN_TIME"); 
Timestamp loggedouttime=rs.getTimestamp("LOGOUT_TIME"); 
long interval = loggedouttime.getTime() - loggedintime.getTime(); 
//total hours 
long hours = interval/(60 * 60 * 1000); 
//time period that should be represented in minutes 
long minutes = (interval % (60 * 60 * 1000))/(60 * 1000); 
//time period that should be represented in seconds 
long seconds = (interval % (60 * 1000))/1000; 
System.out.println(hours + " hours " + minutes + " min " + seconds + " sec"); 

注:請注意,間隔時間是不準確的,因爲比二(< 1000)較小毫秒不被視爲

0

可以使用TimeStamp類的getTime()方法。

試試這個

long diff = loggedouttime.getTime() - loggedintime.getTime(); 
0
long login=System.currentTimeMillis(); 
. 
. 
. 
long logout=System.currentTimeMillis(); 

long difInSeconds=(logout-login)/1000; 

long hours=difInSeconds/3600; 
long minutes=difInSeconds%3600; 
long seconds=difInSeconds-(hours*3600+minutes*60);