2013-03-04 7 views
5

Sto provando a convertire il mio tempo in minuti a HH: MM. Ad esempio 418 minuti = 6:58. Sto usando il codice seguente:Java: calendar.setTimeInMillis() restituisce il valore HOUR_OF_DAY errato

long milli = PriemCas*60000; 
Calendar calendar1 = Calendar.getInstance();  
calendar1.setTimeInMillis(milli); 
int hours3 = calendar1.get(Calendar.HOUR_OF_DAY); 
int minutes3 = calendar1.get(Calendar.MINUTE); 

System.out.println(hours3+":"+minutes3); 

ottengo 07:58 quando le mie variabili PriemCas = 418 invece di 6:58. Cosa potrebbe essere sbagliato qui? Grazie mille.

+0

ora legale? A che cosa è impostato il tuo fuso orario? –

+1

Dato che la differenza è esattamente 1 ora, controllerò se qualcosa di divertente sta accadendo con i fusi orari/le impostazioni dell'ora legale ... – ppeterka

risposta

14

creare il tuo calendario con il fuso orario corretto:

Calendar calendar1 = Calendar.getInstance(TimeZone.getTimeZone("UTC")); 
+0

Grazie ... SOLVED –

+1

Dovresti contrassegnarlo come risolto accettando questa risposta. In questo modo le altre persone che leggono la tua domanda sapranno che troveranno la risposta giusta qui. – kamituel