import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class CalcYourBirthDays {
static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
public static void main(String[] args) {
String birthday = "1992-07-10"; //出生年月日
try {
calcTotalDays(birthday);
} catch (Exception e) {
System.out.println(e);
}
}
public static int calcTotalDays(String birthday) throws Exception{
Date now = new Date();
long nowTime = now.getTime();
BigDecimal totalDays = BigDecimal.ZERO;
try {
Date birth = sdf.parse(birthday);
long birTime = birth.getTime();
long diff = nowTime-birTime;
BigDecimal difdec = new BigDecimal(diff);
BigDecimal dayNum = new BigDecimal(24*3600*1000);
totalDays = difdec.divide(dayNum, BigDecimal.ROUND_HALF_UP);
System.out.println("您已出生:"+totalDays+"天");
System.out.println("您今年"+totalDays.divide(new BigDecimal(365), BigDecimal.ROUND_HALF_UP)+"岁");
} catch (ParseException e) {
throw new Exception("-------------格式转换异常:"+e);
}
return 0;
}
}