• 根据身份证号码来判断处于两个年龄之间


    1、业务需求 要筛选出注册年龄处于18-35周岁的用户

    思路:1、现在都是二代身份证18位。

    2、拿到截取6-18位拿到年月日。

    3、获取当前系统时间转化成Date分别减去18年、35年,计算出时间区域。

    4、判断用户是否处于时间区域

    public static boolean validateIDCARD(String IdNO)
        {
            String birthday = "";
            Date birthdate;
            Date birthdateMax;
            Date birthdateMin;
            Boolean flag = false;
            try
            {
                birthday = IdNO.substring(6, 14);
                birthdate = new SimpleDateFormat("yyyyMMdd").parse(birthday);
                
                Calendar calMax = new GregorianCalendar();
                Calendar calMin = new GregorianCalendar();
                calMax.setTime(new Date());
                calMax.add(Calendar.YEAR, -18);  // 离得最近的年月份
                calMin.setTime(new Date());
                calMin.add(Calendar.YEAR, -35);  // 离得最远的年月份
                
                SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd");
                
                String nownowMax = df.format(calMax.getTime());
                String nownowMin = df.format(calMin.getTime());
                
                birthdateMax = df.parse(nownowMax);
                birthdateMin = df.parse(nownowMin);
                flag = birthdate.after(birthdateMin) && birthdate.before(birthdateMax);
            }
            catch(ParseException e)
            {
                e.printStackTrace();
            }
            
            return flag;
            
        }

     PS:如果对你有帮助,请给一下评价,让我感觉到我写的价值。

  • 相关阅读:
    Microsoft Dynamics CRM 常用JS语法(已转成vs2017语法提示)
    IIS7如何实现访问HTTP跳转到HTTPS访问
    C#调用PB写的com组件dll
    C# winform程序免安装.net framework在XP/win7/win10环境运行!
    文件上传漏洞
    OWASP TOP 10
    sql
    ASCII码查看
    sql注入--mysql
    sql注入--access
  • 原文地址:https://www.cnblogs.com/fan-lp/p/6509546.html
Copyright © 2020-2023  润新知