Foros del Web » Programación para mayores de 30 ;) » Java »

Tiempo transcurrido entre horas

Estas en el tema de Tiempo transcurrido entre horas en el foro de Java en Foros del Web. Hola........... Necesito un poco de ayuda aca.................... Estoy intentando calcular el tiempo transcurrido entre dos rangos de horas...........es decir, saber cuanto tiempo ha pasado desde ...
  #1 (permalink)  
Antiguo 30/01/2006, 08:36
Avatar de dacmonsalve  
Fecha de Ingreso: noviembre-2005
Ubicación: Colombia Tierra querida, himno de fe y armonia
Mensajes: 318
Antigüedad: 18 años, 5 meses
Puntos: 6
Tiempo transcurrido entre horas

Hola...........
Necesito un poco de ayuda aca....................
Estoy intentando calcular el tiempo transcurrido entre dos rangos de horas...........es decir, saber cuanto tiempo ha pasado desde las "11:20:14" hasta las "11:31:28"........
he intentado transformar estas horas a milisegundos, restarlas y luego formar una nueva hora con el resultado......pero el resultado es incorrecto..............
Si alguien me puede hechar una manito.........muchas gracias
__________________
La mayor frustración es saber todas las respuestas,
pero que nadie te haga las preguntas
:Zzz:
.
  #2 (permalink)  
Antiguo 30/01/2006, 11:06
Avatar de Mephisto  
Fecha de Ingreso: enero-2006
Ubicación: Mexico DF
Mensajes: 184
Antigüedad: 18 años, 4 meses
Puntos: 3
Puedes separar los elementos en segundos, minutos y horas, de ahi, restas el final con el inicial y si da negativo le sumas al elemento 60 seg, 60 min o 12 o 24 hrs de acuerdo a la situacion.

Ejemplo:

Hora inicial: 11:20:40
Hora final: 3:40:10

Sd = 10 - 40 = -30 + 60 = 30 Acarreo = 1
Md = 40 - 20 = 20 - Acarreo = 19 Acarreo = 0 por que no se le sumo
Hd = 3 - 11 = - 8 + 12 = 4

Diferencia 4:19:30
__________________
Saludos...

Todos somos sabios, solo que en diferentes disciplinas...
  #3 (permalink)  
Antiguo 30/01/2006, 11:13
Avatar de dacmonsalve  
Fecha de Ingreso: noviembre-2005
Ubicación: Colombia Tierra querida, himno de fe y armonia
Mensajes: 318
Antigüedad: 18 años, 5 meses
Puntos: 6
Gracias Mephisto.................esto me dio una idea........lo voy a probar
__________________
La mayor frustración es saber todas las respuestas,
pero que nadie te haga las preguntas
:Zzz:
.
  #4 (permalink)  
Antiguo 30/01/2006, 16:12
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Es mas corto con los milisegundos, y de hecho mas exacto en dias "extraños" como este 31 de Diciembre.
  #5 (permalink)  
Antiguo 08/02/2006, 13:06
Avatar de xlugo2002  
Fecha de Ingreso: noviembre-2002
Ubicación: Puebla, México
Mensajes: 474
Antigüedad: 21 años, 5 meses
Puntos: 0
milisegundos ?

estoy tratando de hacer lo mismo ke pusieron en el Post original, pero podrian poner un ejemplo de como realizar el calculo en milisegundso ?

Tengo un ejemplo donde hacen el calculo:

long elapsedTime = currentTime.getTime() - lastAccessTime.getTime();

if (elapsedTime < (1*60*1000)){ // un minuto
..................
..................
if (elapsedTime < (60*60*1000)){ // una hora
.................
.................

Ahora bien, el tiempo en milisegundos para 1 minuto serian 60000.

Tengo un problema, ya que cuando mando a imprimir la variable elapsedTime me da un valor de 21 601 785 para un usuario recien logeado, o sea que la resta no me esta devolviendo un valor menor a 60000,,,, y deberia de hacerlo ya que el usuario se ha logeado en el ultimo minuto.

¿Que puedo hacer?
  #6 (permalink)  
Antiguo 09/02/2006, 01:08
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Pues no se lo que estarás haciendo, pero esto:
Código:
  public static void main(String[] args) throws InterruptedException
  {
    Date initDate = new Date();
    Thread.sleep(60000);
    Date endDate = new Date();
    System.err.println("Diferencia en ms.: "
        + (endDate.getTime() - initDate.getTime()));
  }
A mi me devuelve aproximadamente 60.000, despues de tirarse un minuto.
  #7 (permalink)  
Antiguo 13/02/2006, 11:41
Avatar de xlugo2002  
Fecha de Ingreso: noviembre-2002
Ubicación: Puebla, México
Mensajes: 474
Antigüedad: 21 años, 5 meses
Puntos: 0
ok

Para no dejar este thread perdido, dejenme decirles que el error que tengo es que el getTime() del Date me esta devolviendo una hora erronea (adelantada 6hrs. y el otro getTime() devuelve la hora correcta) por lo que la resta no me funcionaba. Pero de esa forma debe funcionar.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:03.