2011-01-03 12 views
9

Mam wartość ciągu 08:03:10 pm, i chcę przekonwertować go na czas. Jak mogę to zrobić w Javie?Jak przekonwertować ciąg na obiekt czasu w Javie?

+10

Ów takiej wspólnej pytanie, może to zostały poproszone 10 razy w tym tygodniu. :) Zgaduję, że Google jest zepsuty ponownie. –

+0

W rzeczywistości wygląda na to, że Chamal poprosił o to dwa razy dzisiaj. – jzd

+0

możliwy duplikat [Konwersja napisów Java na bieżąco] (http://stackoverflow.com/questions/4216745/java-string-to-date-conversion). Jeszcze bliżej powielony jest [Konwertuj ciąg znaków Java na Czas, NIE DATA] (http://stackoverflow.com/q/18604408/642706). –

Odpowiedz

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

Must See

+2

Nie zapomnij przekonwertować daty na java.sql.Time. –

+1

@Gursel Koca Dlaczego? –

+0

cóż, chamal chce mieć czas, a nie date .. chociaż java.sql.Time jest cienkim opakowaniem w terminie, jest to lepsza abstrakcja na czas. –

6

Jeśli pominąć period, to jest bardzo proste. Po prostu wywołaj metodę java.sql.Time.valueof() zamiast metody Time time = new Time("20:03:10");.

1

Czas nie ma wykonawcy, który trwa długo, więc należy używać time.set(date.getTime())

Powiązane problemy