身份证解析工具类 生日出生地

public class CardResolution {
    public static String CardResolutionArea(String cardId){
        String string="";
        if (cardId.length()==18){
            if(cardId.substring(0,2).equals("11")){
                string="北京市";
            }else if(cardId.substring(0,2).equals("12")){
                string="天津市";
            }else if(cardId.substring(0,2).equals("13")){
                string="河北省";
            }else if(cardId.substring(0,2).equals("14")){
                string="山西省";
            }else if(cardId.substring(0,2).equals("15")){
                string="内蒙古自治区";
            }else if(cardId.substring(0,2).equals("21")){
                string="辽宁省";
            }else if(cardId.substring(0,2).equals("22")){
                string="吉林省";
            }else if(cardId.substring(0,2).equals("23")){
                string="黑龙江省";
            }else if(cardId.substring(0,2).equals("31")){
                string="上海市";
            }else if(cardId.substring(0,2).equals("32")){
                string="江苏省";
            }else if(cardId.substring(0,2).equals("33")){
                string="浙江省";
            }else if(cardId.substring(0,2).equals("34")){
                string="安徽省";
            }else if(cardId.substring(0,2).equals("35")){
                string="福建省";
            }else if(cardId.substring(0,2).equals("36")){
                string="江西省";
            }else if(cardId.substring(0,2).equals("37")){
                string="山东省";
            }else if(cardId.substring(0,2).equals("41")){
                string="河南省";
            }else if(cardId.substring(0,2).equals("42")){
                string="湖北省";
            }else if(cardId.substring(0,2).equals("43")){
                string="湖南省";
            }else if(cardId.substring(0,2).equals("44")){
                string="广东省";
            }else if(cardId.substring(0,2).equals("45")){
                string="广西壮族自治区";
            }else if(cardId.substring(0,2).equals("46")){
                string="海南省";
            }else if(cardId.substring(0,2).equals("50")){
                string="重庆市";
            }else if(cardId.substring(0,2).equals("51")){
                string="四川省";
            }else if(cardId.substring(0,2).equals("52")){
                string="贵州省";
            }else if(cardId.substring(0,2).equals("53")){
                string="云南省";
            }else if(cardId.substring(0,2).equals("54")){
                string="西藏自治区";
            }else if(cardId.substring(0,2).equals("61")){
                string="陕西省";
            }else if(cardId.substring(0,2).equals("62")){
                string="甘肃省";
            }else if(cardId.substring(0,2).equals("63")){
                string="青海省";
            }else if(cardId.substring(0,2).equals("64")){
                string="宁夏回族自治区";
            }else if(cardId.substring(0,2).equals("65")){
                string="新疆维吾尔自治区";
            }else if(cardId.substring(0,2).equals("71")){
                string="台湾省";
            }else if(cardId.substring(0,2).equals("81")){
                string="香港特别行政区";
            }else if(cardId.substring(0,2).equals("91")){
                string="澳门特别行政区";
            }
        }
        return string;
    }

    public static int CardResolutionAge(String cardId){
        //截取身份证中出行人出生日期中的年、月、日
        Integer personYear = Integer.parseInt(cardId.substring(6, 10));
        Integer personMonth = Integer.parseInt(cardId.substring(10, 12));
        Integer personDay = Integer.parseInt(cardId.substring(12, 14));

        Calendar cal = Calendar.getInstance();
        // 得到当前时间的年、月、日
        Integer yearNow = cal.get(Calendar.YEAR);
        Integer monthNow = cal.get(Calendar.MONTH) + 1;
        Integer dayNow = cal.get(Calendar.DATE);

        // 用当前年月日减去生日年月日
        Integer yearMinus = yearNow - personYear;
        Integer monthMinus = monthNow - personMonth;
        Integer dayMinus = dayNow - personDay;

        Integer age = yearMinus; //先大致赋值

        if (yearMinus == 0) { //出生年份为当前年份
            age = 0;
        }else{ //出生年份大于当前年份
            if (monthMinus < 0) {//出生月份小于当前月份时,还没满周岁
                age = age - 1;
            }
            if (monthMinus == 0) {//当前月份为出生月份时,判断日期
                if (dayMinus < 0) {//出生日期小于当前月份时,没满周岁
                    age = age - 1;
                }
            }
        }
        return age;
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值