java代码如何根据身份证号计算当前年龄呢?
下文笔者讲述根据身份证号码获取当前年龄的方法分享,如下所示
身份证号获取年龄的实现思路
1.截取字符串的6~14位 2.使用SimpleDateFormat对象转换身份证中的年龄信息 采用以上方法即可从身份证号中获取年龄信息
身份证号获取年龄的示例
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; public class BirthUtils { /** * 根据身份证号判断当前年龄 * @param cardNo * @return */ public static int getAge(String cardNo) { String birthday = cardNo.substring(6, 14); Date birthdate = null; try { birthdate = new SimpleDateFormat("yyyyMMdd").parse(birthday); } catch (ParseException e) { e.printStackTrace(); } GregorianCalendar currentDay = new GregorianCalendar(); currentDay.setTime(birthdate); int birYear = currentDay.get(Calendar.YEAR); // 获取年龄 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy"); String thisYear = simpleDateFormat.format(new Date()); int age = Integer.parseInt(thisYear) - birYear; return age; } public static void main(String[] args) { System.out.println(getAge("44030720180611****")); } }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。