2016-11-14 3 views
0

Ich versuche, eine Dienstprogrammfunktion zu schreiben, die das akzeptiert Datum, Zeitstempel, zusätzliche Millisekunden zu Zeitstempel konvertiert und die Zeit in Millisekunden zurückgibt. Allerdings bekomme ich eine parse Ausnahme dafür.Konvertieren Sie Zeit in Millisekunden mit SimpleDateFormat

Beispiel params:

dateJson: 14.11.2016

timestampJson: 21:04:20

millisecsJson:

public static long convertToMillisecs(String dateJson, String timestampJson, String millisecsJson) throws ParseException { 

    SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy'T'HH:mm:ss.SSS"); 
    sdf.setTimeZone(TimeZone.getTimeZone("UTC")); 

    String inputString = timestampJson + "." + millisecsJson; 
    Date date = sdf.parse(dateJson + 'T' + inputString); 

    return date.getTime(); 
} 

Was muss geändert werden, um die c orrect analysierbar Datum. Es ist anzumerken, dass ich eine 24-Stunden-Uhr benutze und ich bin in Deutschland stationiert, so dass UTC in diesem Fall in Ordnung ist?

+0

'14.11.2016' ist nicht das gleiche Format wie' dd-MM-yyyy' ... –

+1

Dd-MM-yyyy in dd.MM.yyyy ändern? – Kieveli

Antwort

0

14.11.2016 stimmt nicht mit TT-MM-JJJJ überein.

Und nein, Deutschland ist nicht in der UTC-Zeitzone. Verwenden Sie Europa/Berlin.

Verwandte Themen