今天写编辑用户信息年龄这个字段,用到了身份证,从身份证获取出生日期,然后用当前时间减去出生日期得年龄,不过在用到Date.getYear()的时候,显示方法不可用,然后就用网上寻找答案:
这是网上找的一些关于时间的获取:
Calendar ca = Calendar.getInstance();
int year = ca.get(Calendar.YEAR);//获取年份
int month=ca.get(Calendar.MONTH);//获取月份
int day=ca.get(Calendar.DATE);//获取日
int hour=ca.get(Calendar.HOUR);//小时
int minute=ca.get(Calendar.MINUTE);//分
int second=ca.get(Calendar.SECOND);//秒
int WeekOfYear = ca.get(Calendar.DAY_OF_WEEK); //星期
然后我自己用的的把代码贴一下
String idNo = toUpdateUser.getIdNo();
if (idNo != null && idNo.length() == 18)
{
// 获取出生日期的年份
int birthYear = Integer.parseInt(idNo.substring(6, 10));
// 获取当前日期的年份
Date nowDate = DateTimeUtils.getCurrentDate();
Calendar nowCalendar = Calendar.getInstance();
nowCalendar.setTime(nowDate);
int nowYear = nowCalendar.get(Calendar.YEAR);
// 计算年龄
int age = nowYear - birthYear;
toUpdateUser.setAge(age);
}
获取当前时间,然后set到Calendar里边,然后从里边获取的是当前时间的东西,
如果你set的date是你自己给定的,那么获取到的就是你给定的date