Ver Mensaje Individual
  #2 (permalink)  
Antiguo 18/01/2012, 16:17
Avatar de HackmanC
HackmanC
 
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 17 años, 1 mes
Puntos: 260
Sonrisa Respuesta: Problema con Calendar

Hola,

Como muchas cosas es relativo y depende de muchos factores; por ejemplo si tienes bien configurado el país y el idioma en el sistema operativo.

Hay dos formas de manejar el reloj, una es usar el reloj hardware en UTC y la otra es llevar un reloj por software que agrega o quita horas dependiendo de tu ubicación al reloj hardware.

Por decirlo así, cuando son las 12:00 del medio día en el meridiano de Greenwich GMT puede ser que sean las 19:00 de la noche en tu país y adicionalmente a eso hay que quitarle o sumarle horas dependiendo si tu país está afecto a 'daylight saving'. En este caso el reloj hardware interno de la PC indica 12:00 pero tu ves 19:00 porque así está configurado el sistema. El otro caso es que el reloj de la PC interno diga 19:00 y sean las 19:00 realmente.

Primero tendrías que saber cual es la hora real de tu PC viendo el BIOS (si la muestra), segundo tendrías que saber si el sistema operativo está en reloj harware o software (en Windows siempre está en hardware pero Linux puede estar en uno u el otro).

Después tienes que revisar que el sistema operativo y la consola donde está corriendo tu programa está bien configurada en el TimeZone y el Locale. Podrías averiguar el TimeZone con:

Código Java:
Ver original
  1. System.out.println(TimeZone.getDefault());

También podrías probar a usar el constructor con TimeZone:

Código Java:
Ver original
  1. Calendar.getInstance(TimeZone.getTimeZone("Hora estándar de Alaska"));

También tienes que ver si el reloj que te muestra la hora de tu PC realmente está mostrando la hora correcta (no la hora correcta de tu pais, la hora correcta del reloj hardware de tu PC). Por cierto, lo mas probable es que no esté bien configurado el TimeZone en tu sistema operativo y hace 'daylight savings', le quita o suma una hora al día durante un periodo del año.

Saludos,

Última edición por HackmanC; 18/01/2012 a las 16:28 Razón: edit