2012-08-15 18 views
0

我有一個應用程序檢索從數據庫中以日期時間格式格式化的字符串,並且我想在某些情況下只顯示時間,我將如何完成此操作?如果我有一個日期時間格式,有沒有什麼要顯示的時間?

這是我到目前爲止已經試過,但我得到一個無法解析錯誤

public static final String DATE_TIME_FORMAT = "yyyy-MM-dd kk:mm:ss"; 
private static final String TIME_FORMAT = "kk:mm"; 

// ... 

SimpleDateFormat TimeFormat = new SimpleDateFormat(TIME_FORMAT); 
Date startTimer = null; 
Date endTimer = null; 

try 
{ 
    String dateString = cursor.getString(6); 
    startTimer = TimeFormat.parse(dateString); 

    //Code for End Time 
    String endDateString = cursor.getString(7); 
    endTimer = TimeFormat.parse(endDateString); 

    totalBillable += endTimer.getTime() - startTimer.getTime();    
} 
catch (ParseException e) 
{ 
    Log.e("ReminderEditActivity", e.getMessage(), e); 
} 
+0

如何將你的日期存儲在數據庫中?以什麼格式? – iTurki 2012-08-15 17:18:16

+0

你有什麼嘗試?你做過任何研究嗎?如果是這樣,你發現了什麼? – TheZ 2012-08-15 17:18:18

+0

這是我已經嘗試過,並存儲到目前爲止 – user1457104 2012-08-15 17:24:17

回答

0

我猜你正在得到Unparsable error,因爲你解析的字符串日期格式不同。試試這個:

String dateString = cursor.getString(6); 
startTimer = TimeFormat.parse(dateString.substring(11, 16)); 

String endDateString = cursor.getString(7); 
endTimer = TimeFormat.parse(endDateString.substring(11, 16)); 

希望通過這種方法substring(),你會得到kk:mm日期格式。

0

構建一個格式,它代表了你想要的東西,並用它時,你只希望時間:

DateFormat df = new SimpleDateFormat("HH:mm:ss"); 
String onlyTime = df.format(new Date()); 

演示:http://ideone.com/AziDU

相關問題