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

que tine de malo este código(Duda con fechas)

Estas en el tema de que tine de malo este código(Duda con fechas) en el foro de Java en Foros del Web. encotré este código pero la verdad es que no me fue bien ..... si las fechas están en el mimo mes y año y en ...
  #1 (permalink)  
Antiguo 28/11/2011, 23:56
 
Fecha de Ingreso: enero-2011
Ubicación: Cuba
Mensajes: 124
Antigüedad: 13 años, 3 meses
Puntos: 1
Sonrisa que tine de malo este código(Duda con fechas)



encotré este código pero la verdad es que no me fue bien ..... si las fechas están en el mimo mes y año y en diferentes dia me funciona Ejemplo: 10/02/2011 20/02/2011 me dice que hay 10 dias de diferencia hasta acá todo bien........pero si a una de las fechas le cambio el año o el mes......me da una diferencia de dias que la verdad no se de donde lo saca.....espero que me digan como funciona este código......acá se los dejo.....


public static int obtener_dis_entre_2_fechas(Date fechainicial, Date fechafinal) {

DateFormat df = DateFormat.getDateInstance(DateFormat.MEDIUM);
String fechainiciostring = df.format(fechainicial);
try {
fechainicial = df.parse(fechainiciostring);
}
catch (ParseException ex) {
}

String fechafinalstring = df.format(fechafinal);
try {
fechafinal = df.parse(fechafinalstring);
}
catch (ParseException ex) {
}

long fechainicialms = fechainicial.getTime();
long fechafinalms = fechafinal.getTime();
long diferencia = fechafinalms - fechainicialms;
double dias = Math.floor(diferencia / 86400000L);// 3600*24*1000
return ( (int) dias);
}



  #2 (permalink)  
Antiguo 29/11/2011, 05:12
Avatar de FiruzzZ  
Fecha de Ingreso: diciembre-2007
Ubicación: en casa
Mensajes: 470
Antigüedad: 16 años, 4 meses
Puntos: 41
Respuesta: que tine de malo este código(Duda con fechas)

El método funciona correctamente..
Código Java:
Ver original
  1. public static int obtener_dis_entre_2_fechas(Date fechainicial, Date fechafinal) {
  2.  
  3.  /* TODO ESTO NO CUMPLE NINGÚN PROPÓSITO....
  4. DateFormat df = DateFormat.getDateInstance(DateFormat.MEDIUM);
  5.  String fechainiciostring = df.format(fechainicial);
  6.  try {
  7.  fechainicial = df.parse(fechainiciostring);
  8.  }
  9.  catch (ParseException ex) {
  10.  }
  11.  
  12.  String fechafinalstring = df.format(fechafinal);
  13.  try {
  14.  fechafinal = df.parse(fechafinalstring);
  15.  }
  16.  catch (ParseException ex) {
  17.  }
  18. */
  19.  long fechainicialms = fechainicial.getTime();
  20.  long fechafinalms = fechafinal.getTime();
  21.  long diferencia = fechafinalms - fechainicialms;
  22.  double dias = Math.floor(diferencia / 86400000L);// 3600*24*1000
  23.  return ( (int) dias);
  24.    }
__________________
BadProgrammerException!
  #3 (permalink)  
Antiguo 29/11/2011, 21:46
 
Fecha de Ingreso: enero-2011
Ubicación: Cuba
Mensajes: 124
Antigüedad: 13 años, 3 meses
Puntos: 1
Respuesta: que tine de malo este código(Duda con fechas)


gracias por la sugerencias pero la verdad es que ya no se que hacer......cunado pongo las fechas con igual mes y años me da los días que hay entre las dos fechas correctamente ..... Ejemplo: fecha_Inicio="10/02/2011" y fecha_vencimiento="20/02/2011" eso me da como resultado que hay 10 dias entre las dos fechas ......pero si le cambio el mes o el año a una de las dos fechas me sigue dando el mismo resultado..........Ejemplo: fecha_Inicio="10/02/2011" y
fecha_vencimiento="20/03/2011" me da como resultado 10 tambien..... creo que lo que está haciendo es restar solamente los dias de las fechas sin tener en cuenta el mes ni el año..........espero que me entiendan y puedan darle solucion a mi problema...... Gracias de antemano.....

Etiquetas: malo, string
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 14:30.