Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/03/2012, 04:42
dpbataller
 
Fecha de Ingreso: agosto-2009
Mensajes: 134
Antigüedad: 15 años, 4 meses
Puntos: 3
Diferencia entre dos fechas

Hola, me estoy volviendo loco para conseguir lo que aparentemente es una tonería.
Dado dos fechas, me gustaría mostrar lo siguiente:

QUEDAN 167 Días, 22, Horas, 35 Minutos , 9 Segundos

Estoy bloqueado y no logro encontrar el algoritmo. Consigo que muestre los días que quedan, por que antes he recogido los milisegundos totales y los he pasado a días.
Pero, ahora cómo hago la cuenta atrás de las horas, minutos y segundos? y que además, sean reales?
¿Alguien me echa un cable?


Código Javascript:
Ver original
  1. public class Fechas {
  2.  
  3.     //Lo he sacado de http://mundojava.blogspot.com/2007/04/fechas-en-java.html
  4.     public static void main(String[] args) {
  5.         long dias,minutos,segundos,horas;
  6.         GregorianCalendar gc = new GregorianCalendar(2012, 2, 1); // El segundo parámetro es un 0 por que el GregorianCalendar, empieza por Enero, es decir: Enero-->0 Febrero-->1 etc..
  7.         GregorianCalendar gc1 = new GregorianCalendar(2012, 2, 19);
  8.         //Obtengo los objetos Date para cada una de ellas
  9.         Date fec1 = gc.getTime();
  10.         Date fec2 = gc1.getTime();
  11.        
  12.        
  13.         //Realizo la operación
  14.        
  15.         long time = fec2.getTime() - fec1.getTime(); //Lo devuelve en milisegundos
  16.        
  17.         dias = time/(3600*24*1000); //Los milisegundos los paso a dias
  18.         System.out.println("Milisegundos:" + time + " Días: " + dias);
  19.     }
  20. }