package com.lgr.zikao.utils; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.GregorianCalendar; import java.util.Hashtable; import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class IdCardValidate { public static String tipInfo = "该身份证有效!";// 记录错误信息 public static boolean IDCardValidate(String IDStr) throws ParseException { String Ai = ""; // 判断号码的长度 15位或18位 if (IDStr.length() != 15 && IDStr.length() != 18) { tipInfo = "身份证号码长度应该为15位或18位。"; return false; } // 18位身份证前17位位数字,如果是15位的身份证则所有号码都为数字 if (IDStr.length() == 18) { Ai = IDStr.substring(0, 17); } else if (IDStr.leng