java代码如何根据身份证号计算当前年龄呢?

乔欣 Java经验 发布时间:2023-03-16 22:06:55 阅读数:9369 1
下文笔者讲述根据身份证号码获取当前年龄的方法分享,如下所示

身份证号获取年龄的实现思路

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****"));
    }
}
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202303/16789770856064.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者