2017-11-07 3 views
-1

Wie kann ich 24 Stunden Zeitformat in 12 Stunden Format konvertieren? Ich weiß, dass diese Frage schon oft gestellt wurde, aber mein Problem ist anders. Meine aktuelle Zeit:Wie kann ich Datum und Uhrzeit umformatieren?

Di 7. November 18.44.47 GMT + 05: 00 2017

Ich möchte nur 6.44 von meiner Datum Zeit. Ich versuchte dies:

private void convertTime(String time) 
{ 
    try { 
     final SimpleDateFormat sdf = new SimpleDateFormat("H:mm"); 
     final Date dateObj = sdf.parse(time); 
     System.out.println(dateObj); 
     System.out.println(new SimpleDateFormat("K:mm a").format(dateObj)); 
    } catch (final ParseException e) { 
     e.printStackTrace(); 
    } 
} 
+0

Wie ist Ihr Problem anders? Wie scheitert Ihr Versuch? Bitte geben Sie alle Fehlermeldungen und jeden Stacktrace wörtlich an. –

Antwort

2

Von SimpleDateFormat Dokumentation:

"h: mm a": 12.08

Also das Format, das Sie brauchen für:

Ich will nur 18.44 von meiner Datum Zeit

ist:

final SimpleDateFormat sdf1 = new SimpleDateFormat("EEE MMM d HH:mm:ss z yyyy"); 
Date date = sdf1.parse(time); 
final SimpleDateFormat sdf = new SimpleDateFormat("h:mm a"); 
String newDateString = sdf.format(date); 
+0

, aber ich habe dieses Mal in Folge „Di 7. November 18.44.47 GMT + 05: 00 2017“ und ich brauche nur Stunden und Minuten mit 12 Stunden-Format – Innocent

+0

Ok aktualisierte meine Antwort, 'Time' ist die' String Time' Parameter Ihrer 'convertTime' Methode – pleft

+0

Vielen Dank – Innocent

3
final SimpleDateFormat sdf = new SimpleDateFormat("hh:mm"); 

hh können Sie Zeit 12 Stunden-Format und HH 24 Stunden Format geben. Weitere Details unter documentation.

Edit:

Ihr erstes Format muss folgend sein, um Ihr Datum Zeichenfolge in ein Date Objekt zu analysieren:

final SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM d HH:mm:ss 'GMT'Z yyyy"); 
final Date dateObj = sdf.parse(time); 

Danach Sie Zeit auf Ihre Bedürfnisse formatieren.

+0

, aber ich habe diese Zeit Di 7. November 18.44.47 GMT + 05: 00 2017 und ich brauche nur Stunden und Minuten mit 12 Stunden-Format – Innocent

+1

Ihr Format ist 'EEE MMM d HH: mm: ss‚GMT'Z yyyy' –

1
try { 
    final SimpleDateFormat sdf = new SimpleDateFormat("hh:mm"); 
    final Date dateObj = sdf.parse(time); 
    System.out.println(dateObj); 
    System.out.println(new SimpleDateFormat("K:mm a").format(dateObj)); 
} catch (final ParseException e) { 
    e.printStackTrace(); 
}