使用java实现验证身份证号码的完整性,对身份证的长度,省市县,出生日期,验证码等进行全方位验证,具体代码如下:
package com.practice.utils;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.Hashtable;
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.length() == 15) {