我使用Java創建了一個應用程序,並且我有一個文本框,我想輸入開始時間,另一個輸入endtime。在這些參賽作品之後,我希望看到時差hh:mm。以hh:mm的形式輸入時間
例子:
開始時間:12:00
結束時間:14:30結果:2:30
我使用Java創建了一個應用程序,並且我有一個文本框,我想輸入開始時間,另一個輸入endtime。在這些參賽作品之後,我希望看到時差hh:mm。以hh:mm的形式輸入時間
例子:
開始時間:12:00
結束時間:14:30結果:2:30
獲取毫秒的時間從您的日期 - 領域。從'到'日期摘要'從'開始。例如。
toDate.getTime() - fromDate.getTime()
然後,你必須以毫秒爲單位的時間差,計算到秒,小時,天等的簡單的事情
milliseconds/1000
數秒等
這將有助於你瞭解SimpleDateFormat以解析和格式化Date對象。
要在您的文本字段解析日期使用
// use "hh:mm" if you work in 12-hour format or
// use "HH:mm" if you work in 24-hour format
SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm");
try
{
Date date = dateFormat.parse(startTextField.getText());
}
catch (ParseException e)
{
//TODO don't forget process exception
e.printStackTrace();
}
到目前爲止給出的都是正確的兩個答案,但我認爲他們會最好一起利用。
像這樣:
SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm");
try {
Date startDate = dateFormat.parse(startTextField.getText());
Date endDate = dateFormat.parse(endTextField.getText());
long differenceMillis = endDate.getTime() - startDate.getTime();
resultTextField.setText(dateFormat.format(new Date(differenceMillis)));
} catch (ParseException e) {
resultTextField.setText("ERROR");
}
所有編碼方案見this Javadoc。請注意,此方法將以天爲單位減少差異,並僅報告幾小時。
[你有什麼嘗試](http://mattgemmell.com/2008/12/08/what-have-you-tried/),沒有工作? – pankar 2012-08-14 08:50:41