Salve. Quello che voglio fare è, data una stringa rappresentante una data, ottenere la stringa
che rappresenta la stessa data convertita in UTC.
Questo è quello che ho scritto:
codice:
String dateLocal = groundTruthData[0] + " " + groundTruthData[1]; // data in LOCALE
//System.out.println("before: " + dateLocal);
Calendar calendar = new GregorianCalendar();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
sdf.setCalendar(calendar);
Date myDate = sdf.parse(dateLocal);
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
calendar.setTime(myDate);
System.out.println("after: " + sdf.format(calendar.getTime()));
Se la data iniziale è:
2016-10-30 07:05:10.764, la seconda print stampa 2016-10-30 06:05:10.764
Volevo sapere se è corretto e se il codice è semplificabile.
Update
codice:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
Date localDate = sdf.parse(dateLocal);
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
String UTCDateTime = sdf.format(localDate);