2011-01-03 47 views
9

Tôi có giá trị Chuỗi là 08:03:10 pm và tôi muốn chuyển đổi nó thành thời gian. Làm thế nào tôi có thể làm điều này trong Java?Làm thế nào để chuyển đổi chuỗi thành đối tượng Thời gian trong Java?

+10

Đó là câu hỏi phổ biến, có thể hỏi 10 lần trong tuần này. :) Tôi đoán google bị hỏng một lần nữa. –

+0

Trong thực tế, có vẻ như Chamal đã hỏi điều này hai lần ngày hôm nay. – jzd

+0

bản sao có thể có của [Java string to date conversion] (http://stackoverflow.com/questions/4216745/java-string-to-date-conversion). Thậm chí trùng lặp gần hơn là [Chuyển đổi chuỗi Java thành Time, NOT Date] (http://stackoverflow.com/q/18604408/642706). –

Trả lời

25
String str = "08:03:10 pm"; 
DateFormat formatter = new SimpleDateFormat("hh:mm:ss a"); 
Date date = formatter.parse(str); 

Must See

+2

đừng quên chuyển đổi ngày thành java.sql.Time. –

+1

@Gursel Koca Tại sao? –

+0

tốt, chamal muốn thời gian không ngày .. mặc dù java.sql.Time là một wrapper mỏng xung quanh ngày, nó là trừu tượng tốt hơn cho thời gian. –

6

Nếu bạn bỏ qua các period, nó là rất dễ dàng. Chỉ cần gọi phương thức java.sql.Time.valueof() thay vì phương thức Time time = new Time("20:03:10");.

1

Thời gian không có nhà thầu mất nhiều thời gian để sử dụng time.set(date.getTime())

Các vấn đề liên quan