Java - Calculo de edad

 
Vista:

Calculo de edad

Publicado por Martin (1 intervención) el 02/12/2009 17:30:37
Hola, estoy tratando de calcular la edad de una persona mediante la clase date, lo que hago hasta ahora es:

long fechaN = this.getFechaDeNacimiento().getTime().getTime();
Date cal = new Date();
long edad = cal.getTime() - fechaN;

pero apartir de aca no se que hacer o sea como lo paso a años, como convierto esa diferencia en un numero entero que te diga cuantos años son todos esos segundos o milisegundos?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Calculo de edad

Publicado por chasal99 (42 intervenciones) el 02/12/2009 21:41:48
Hola martin espero que te sirva este ejemplo:

import java.util.Calendar;

public class CalculaEdad {
public static void main(String[] args) {
String[] edad=getEdadActual("18/12/1976");
System.out.println("Dias:"+edad[0]);
System.out.println("Meses:"+edad[1]);
System.out.println("annos:"+edad[2]);

}

public static String[] getEdadActual(String edad){
String[] edadFinal=new String[3];
try {
//Obtenemos la edad de nacimiento
int diaNac=Integer.valueOf(edad.substring(0,2));
int mesNac=Integer.valueOf(edad.substring(3,5))-1;//eL MES EMPIEZA DESDE 0 POR ESO LE RESTE 1
int annioNac=Integer.valueOf(edad.substring(6,10));
//Obtenemos la fecha actual
Calendar fechaSistema=Calendar.getInstance();
//le resto los annios
fechaSistema.add(Calendar.YEAR, -annioNac);
fechaSistema.add(Calendar.MONTH, -mesNac);
fechaSistema.add(Calendar.DAY_OF_MONTH, -diaNac);
edadFinal[0]=String.valueOf(fechaSistema.get(Calendar.DAY_OF_YEAR));
edadFinal[1]=String.valueOf(fechaSistema.get(Calendar.MONTH));
edadFinal[2]=String.valueOf(fechaSistema.get(Calendar.YEAR));

} catch (Exception e) {
e.printStackTrace();
}
return edadFinal;
}
}

saludos si deseas algo mas solo postealo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar