2011-03-27 39 views
7

我有問題將字符串時間轉換爲時間對象,因爲它與Date一起打印。這是我的代碼。轉換字符串的時間對象沒有日期

String time = "15:30:18"; 

DateFormat sdf = new SimpleDateFormat("hh:mm:ss"); 
Date date = sdf.parse(time); 

System.out.println("Time: " + date); 

如何轉換和打印只有在java中沒有日期的時間。如果你能舉一個例子會更好。

謝謝。

回答

23

使用您用於解析它同樣SimpleDateFormat

String time = "15:30:18"; 

DateFormat sdf = new SimpleDateFormat("hh:mm:ss"); 
Date date = sdf.parse(time); 

System.out.println("Time: " + sdf.format(date)); 

記住,Date對象總是呈現合併的日期/時間值。它無法正確表示僅限日期或僅限時間的值,因此您必須使用正確的DateFormat以確保您只能「看見」所需的部分。

8

該作品,以及

String t = "00:00:00" 
Time.valueOf(t); 
3

喬達時間| java.time

如果您想要一個沒有日期且沒有時區的時間值,那麼您必須使用Joda-Time庫或Java 8中捆綁的新Java時間包(受Joda-Time啓發) 。

這兩個框架都提供了一個LocalTime類。

在喬達時間2.4 ...

LocalTime localTime = new LocalTime("15:30:18"); 

在java.time ...

LocalTime localTime = LocalTime.parse("15:30:18"); 
相關問題