bom dia pessoal, estou programando em JSP, e o seguinte preciso que seja calculado a idade depois que uma data for informada.
fiz um campo text normal para que seja informada a data, com o campo já formatada para receber no padrão 00/00/0000.
preciso fazer esse calculo.se alguem ja tiver um exemplo pronto já ajudaria muito. quem puder me ajudar eu agradeço desde já.
a data sera digitada pelo usuario, eu preciso salvar no bd o resultado que e a idade.
[code]temos esse algoritmo que é bastante eficiente…
import java.util.Calendar;
import java.util.Date;
/**
*@Author: Renata Torres
*/
public class Data {
public Data(Date data){
System.out.println(calcIdade(data));
}
public int calcIdade(Date dataNasc){
Date hoje = new Date();
Calendar cal = Calendar.getInstance();
cal.setTime(hoje);
int day1 = cal.get(Calendar.DAY_OF_YEAR);
int ano1 = cal.get(Calendar.YEAR);
cal.setTime(dataNasc);
int day2 = cal.get(Calendar.DAY_OF_YEAR);
int ano2 = cal.get(Calendar.YEAR);
int nAno = ano1 - ano2;
if(day1 < day2)
nAno--; //Ainda não completou aniversario esse ano.
return nAno;
}
public static void main(String[] args){
Calendar c = Calendar.getInstance();
c.set(1988, 2, 23); //Dia começa de 1 mesmo é normal.já o mês começa de 0 não de 1, ou seja esta data se refere ao dia 23 de março de 1988.
new Data(c.getTime());
}
} [/code]