2012-07-15 17 views
1

我是java/android中的初學者,但我正在嘗試創建應用程序。用戶必須輸入像13:45那樣的時間,然後應用程序應該替換前。從那時起00:30分鐘。結果是13:15。 我已經嘗試了許多不同的東西,但它不會工作。如何減去寫入爲hh:mm的兩次並在textview中顯示結果

我有這樣的東西。 (在這個階段,我硬編碼的兩倍)

String time1 = "00:30"; 
    String time2 = "13:45"; 

SimpleDateFormat format = new SimpleDateFormat("HH:mm"); 
Date date1 = format.parse(time1); 
Date date2 = format.parse(time2); 
long result= date2.getTime() - date1.getTime(); 

String strLong = Long.toString(result); 

textView4.setText(strLong); 

我在format.parse(時間1)和format.parse(時間2)得到一個錯誤。這是正確的方法嗎?任何幫助?謝謝

+0

你會得到什麼錯誤?我沒有看到代碼的任何問題.. – Caner 2012-07-15 10:27:11

回答

1

使用Calendar類型。

SimpleDateFormat format = new SimpleDateFormat("HH:mm"); 
Date date2 = format.parse(time2); 

Calendar cal=Calendar.getInstance(); 
cal.setTime(date2); 
cal.add(Calendar.MINUTE, -30); //Subtract 30 Min 

String strLong= format.format(cal.getTime()); 
textView4.setText(strLong); 
+0

謝謝,但它仍然無法正常工作。再一次,我得到format.parse(time2)調用中的錯誤。它說「未處理的異常類型ParseException」我正在使用Eclipse,目標是API級別7. – cna 2012-07-15 11:15:20

+0

@cna - 對不起!我沒有得到你。你能否在你的文章中發佈異常追蹤? – adatapost 2012-07-15 11:17:46

+0

我設法弄明白了。我需要一個圍繞format.parse(time2)的try/catch。然後它工作! - 謝謝你幫助我。 – cna 2012-07-15 11:54:53

相關問題