Clase Date
Hola amigos/as!!!
Tengo un lijero problemilla, tenmgo qie tratar con la clase date, la cual me esta dando mas problemas de los normales.mio problema es que debo obtener la fecha actual (año,mes,dia) y compararla con otra fecha , el caso es que me da errores de compilacion y me ademas devuelve valores que no deberia, una hora aleatoria por ejemplo.Pos nada mas , era eso, si alguien me puede decir como tratar este problema pos le estaria muy agradecido.
ciao.
Tengo un lijero problemilla, tenmgo qie tratar con la clase date, la cual me esta dando mas problemas de los normales.mio problema es que debo obtener la fecha actual (año,mes,dia) y compararla con otra fecha , el caso es que me da errores de compilacion y me ademas devuelve valores que no deberia, una hora aleatoria por ejemplo.Pos nada mas , era eso, si alguien me puede decir como tratar este problema pos le estaria muy agradecido.
ciao.
Mi experiencia como programador, me ha dejadado que la manipulacion de fechas es dificil, bueno aqui te van dos formas de internar ayudarte:
Primero seamos practicos, por lo que te entendi tienes dos objetos de la clase Date, debes verificar si ambos son iguales
Date actu = new Date(); //Fecha actual
Date otra = new Date(1999,12,1); //Otra fecha
//en este caso puedes sustituir los valores por valores validos, es decir, el año debe ser mayor a 1900, el mes entre 1 y 12, y el dia entre 1 y 31 segun corresponda
if (actu.after(otra) || actu.before(otra))
{
//la fecha es distinta
}
el otro metodo consiste en ser mas conservadores, por lo general es lo mejor
De los dos objetos hacemos lo siguiente:
int x1 = actu.getDate(); //Entero entre 1 y 31
int x2 = actu.getDay(); //Entero entre 1 y 12
int x3 = actu.getYear(); //Entero que resulta de la diferencia del año - 1900, es decir, 100 es equivalente al año 2000
int y1 = otra.getDate();
int y2 = otra.getDay();
int y3 = otra.getYear();
if ((x1==y1) && (x2==y2) && (x3==y3))
{
//Fechas identicas
}
else
{
//Fechas distintas
}
Espero que te haya sido util
Primero seamos practicos, por lo que te entendi tienes dos objetos de la clase Date, debes verificar si ambos son iguales
Date actu = new Date(); //Fecha actual
Date otra = new Date(1999,12,1); //Otra fecha
//en este caso puedes sustituir los valores por valores validos, es decir, el año debe ser mayor a 1900, el mes entre 1 y 12, y el dia entre 1 y 31 segun corresponda
if (actu.after(otra) || actu.before(otra))
{
//la fecha es distinta
}
el otro metodo consiste en ser mas conservadores, por lo general es lo mejor
De los dos objetos hacemos lo siguiente:
int x1 = actu.getDate(); //Entero entre 1 y 31
int x2 = actu.getDay(); //Entero entre 1 y 12
int x3 = actu.getYear(); //Entero que resulta de la diferencia del año - 1900, es decir, 100 es equivalente al año 2000
int y1 = otra.getDate();
int y2 = otra.getDay();
int y3 = otra.getYear();
if ((x1==y1) && (x2==y2) && (x3==y3))
{
//Fechas identicas
}
else
{
//Fechas distintas
}
Espero que te haya sido util