Utilizamos cookies propias y de terceros para mejorar la experiencia de navegación, y ofrecer contenidos y publicidad de interés.
Al continuar con la navegación entendemos que se acepta nuestra política de cookies.
Iniciar sesión Cerrar
Correo:
Contraseña:
Entrar
Recordar sesión en este navegador
Iniciar sesiónIniciar sesiónCrear cuentaCrear cuenta

Java - Calculo de edad

  Imprimir  
Vista:
Me gusta: Está pregunta es útil y esta clara
0
No me gusta: Está pregunta no esta clara o no es útil
 
Asunto:

Calculo de edad

Autor:Mr. Question (2 intervenciones)
Fecha:04/07/2005 21:36:13
Saludos, una consultilla por favor tengo los datos de una persona, su fecha de nacimiento en formato "aaaammdd" (año, mes, dia) Ejemplo: 18000930 y tengo otrodato del a persona su Fecha de deceso en el mismo formato Ej: 18600501, necesito calcular su edad pero considerando los meses dias años bisiestos y todo eso que me dejo con la gran duda =( por fa cualkier idea sea bienbenida =).
Mr. Question
Responder
información
Otras secciones de LWP con contenido similar...
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

RE:Calculo de edad

Autor:J Hilario (55 intervenciones)
Fecha:05/07/2005 00:42:06
Pues mira....como que muy bueno con eso de las fechas no soy, pero se me ocurre que formes un objeto de calendario con la fecha que tienes de entrada, uno con la fecha actual (sin parámteros) y partir de ahi realizar tú el cálculo de los años. Espero el siguiente código sea de utilidad y no presente algún error de lógica.

String fecha = "20040604"; // 5 de junio 2004
// Formar el objeto con los parámetros (year, month, dayOfMonth)
int y1 = Integer.parseInt(fecha.substring(0, 4));
int m1 = Integer.parseInt(fecha.substring(4, 6));
int d1 = Integer.parseInt(fecha.substring(6, 8));
GregorianCalendar fechaAnterior = new GregorianCalendar(y1, m1, d1);
// Objeto con la fecha actual
GregorianCalendar fechaActual = new GregorianCalendar();
int y2 = fechaActual.get(GregorianCalendar.YEAR);
int m2 = fechaActual.get(GregorianCalendar.MONTH);
int d2 = fechaActual.get(GregorianCalendar.DAY_OF_MONTH);
int diffYears = (y2 - y1 - 1) + (m2 == m1 ? (d2 >= d1 ? 1 : 0) : m2 >= m1 ? 1 : 0);
System.out.println(diffYears + " años");

PD. Sé que hay mejores códigos, fáciles y seguros que este pero es lo que se me ocurrió, saludos...
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

RE:Calculo de edad

Autor:Mr. Question (2 intervenciones)
Fecha:05/07/2005 04:18:16
Gracias Hilario!, me sirvio, una consulta en q consiste esa formula? o sea como trabaja me podrias explicar por favor? =), gracias nuevamente
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

RE:Calculo de edad

Autor:J Hilario (55 intervenciones)
Fecha:05/07/2005 16:43:22
Pues mira...la primera operacion es la resta de los años
y2 - y1 - 1
si tenemos por ejemplo 31-diciembre-2000 y 1-enero-2001 te darás cuenta que hay un año de diferencia, pero solo en el valor de los años, no en toda la fecha. Entonces se resta uno y la siguiente operación verifica los meses y los días para ver si ha pasado un año (con lo cual se sumará uno al resultado anterior)
la siguiente operación:
(m2 == m1 ? (d2 >= d1 ? 1 : 0) : m2 >= m1 ? 1 : 0)
Si los meses son iguales, entonces hay que comprobar si el día d2 es mayor al día d1, en ese casi si ha transcurrido un año. O bien, basta con probar que el mes2 es mayo al mes 1. Incluso creo que puedes cambiar el sigo >= por solo >. Saludos
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

RE:Calculo de edad

Autor:Oscar (1 intervención)
Fecha:02/11/2008 18:32:28
hola| porfavor como mando el parametro Timestamp porfavor es urgente
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

RE:Calculo de edad

Autor:Ramon Velazquez Rios (1 intervención)
Fecha:14/03/2008 02:13:56
Calcular la edad con Java, recive como parametro Timestamp con tu fecha de nacimiento y calcula los años, meses y dias ke has vivido

public class Edad {

private int year;
private int month;
private int day;

/** Creates a new instance of Edad */
public Edad() {
}

public int getYear() {
return year;
}

public void setYear(int year) {
this.year = year;
}

public int getMonth() {
return month;
}

public void setMonth(int month) {
this.month = month;
}

public int getDay() {
return day;
}

public void setDay(int day) {
this.day = day;
}


public Edad calcularEdad (Timestamp birth) {

Date d = new Date();

SimpleDateFormat sdfDia = new SimpleDateFormat("dd");
SimpleDateFormat sdfMes = new SimpleDateFormat("MM");
SimpleDateFormat sdfAño = new SimpleDateFormat("yyyy");

int a = Integer.parseInt(sdfAño.format(d)) - Integer.parseInt(sdfAño.format(birth));
int b = Integer.parseInt(sdfMes.format(d)) - Integer.parseInt(sdfMes.format(birth));
int c = Integer.parseInt(sdfDia.format(d)) - Integer.parseInt(sdfDia.format(birth));

if (b < 0) {
a = a -1;
b = 12 + b;
}

if (c < 0) {
b = b - 1;
switch (Integer.parseInt(sdfMes.format(d))) {
case 2:
int año = Integer.parseInt(sdfAño.format(d));
if ((año % 4 == 0) && ((año % 100 != 0) || (año % 400 == 0)))
c = 29 + c;
else
c = 28 + c;
break;
case 4:
case 6:
case 9:
case 10:
case 11: c = 30 + c;
break;
case 1:
case 3:
case 5:
case 7:
case 8:
case 12: c = 31 + c;
break;
}
}

Edad edad = new Edad();
edad.setDay(c);
edad.setMonth(b);
edad.setYear(a);

return edad;
}

}

// Monchis Xtreme.... >:3333
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

RE:Calculo de edad

Autor:Roque (1 intervención)
Fecha:19/08/2008 05:06:44
De donde sale la clase SimpleDateFormath
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

RE:Calculo de edad

Autor:lsibeth (1 intervención)
Fecha:09/06/2009 18:26:37
necesito por favor un programa en java que calcule los dias vividos
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

RE:Calculo de edad

Autor:Laura Zapata Aspiazu (1 intervención)
Fecha:02/09/2008 00:37:01
Gracias por el código, lo voy a adjuntar y a probar en mi proyecto.
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

RE:Calculo de edad

Autor:robert (1 intervención)
Fecha:21/10/2009 01:06:53
hola

este es el edad.java y necesito saber como se hace el metodo main

ahi que debo poner

me podrian ayudar
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

RE:Calculo de edad

Autor:Henry Wong (1 intervención)
Fecha:28/12/2010 19:15:59
Url:
Una forma un poco mas sencilla seria usando el siguiente metodo

http://hwongu.blogspot.com/2008/09/calculo-de-la-edad-desde-java.html
Comentar