下载地址:http://codeshop.googlecode.com/files/idchecker.zip
原文地址:http://www.blogjava.net/rongxh7/archive/2010/01/03/308097.html
提供给外部调用的cn.idchecker.check.Checker类的相关方法如下表:
方法 | 方法作用 | 参数及返回值 |
Checker(String num) | 构造方法 | 参数num为18位身份证号码的字符串 |
boolean checkLength() | 验证身份证长度是否正确 | 长度为18,则返回true,否则返回false |
boolean checkBirth() | 验证出生生日码是否合法 | 合法则返回true,否则返回false |
boolean checkAddr() | 验证地址码是否存在 | 存在则返回true,否则返回false |
boolean checkCheckCode() | 计算校验码是否正确 | 正确则返回true,否则返回false |
boolean check() | 总的身份证验证,验证顺序:长度 -> 生日 -> 最后一位校验码 -> 地址 | 若遇到有一项目不合法即返回false,所有验证通过才返回true。验证后,可通过调用getErrorMsg()方法获取错误信息 |
boolean checkAll() | 总的身份证验证,验证项目包括长度、地址、生日、最后一位校验码 | 身份证合法则返回true,否则false。验证后,可调用getErrorMsgs()方法获取错误信息集合 |
String getBirth() | 获取出生年月日 | 返回“2010年01月12日”格式的生日字符串通串 |
String getAddr() | 获取公民籍贯 | 返回籍贯字符串("xx省xx市xx县”) |
String getSex() | 获取性别 | 返回“男”或“女” |
String getErrorMsg() | 获取错误信息 | 返回错误信息字符串 |
public Set<String> getErrorMsgs() | 获取错误信息集合 | 返回错误信息集合 |
用法举例 1 :解压缩“idchecker.zip”,将其目录下的“idchecker.jar” 包引进Java Project中,以下是测试程序:
public
class
TestChecker {
public static void main(String[] args) {
Checker checker = new Checker( " 44010619860710145X " );
System.out.println( " 出生年月日 : " + checker.getBirth());
System.out.println( " 性别 : " + checker.getSex());
System.out.println( " 居民地址 : " + checker.getAddr());
System.out.println( " 身份证号码是否合法 : " + checker.check() + " " + checker.getErrorMsg());
checker.checkAll();
for (String msg : checker.getErrorMsgs()) {
System.out.print(msg + " | " );
}
}
}
public static void main(String[] args) {
Checker checker = new Checker( " 44010619860710145X " );
System.out.println( " 出生年月日 : " + checker.getBirth());
System.out.println( " 性别 : " + checker.getSex());
System.out.println( " 居民地址 : " + checker.getAddr());
System.out.println( " 身份证号码是否合法 : " + checker.check() + " " + checker.getErrorMsg());
checker.checkAll();
for (String msg : checker.getErrorMsgs()) {
System.out.print(msg + " | " );
}
}
}
运行结果:
出生年月日 : 1986年07月10日
性别 :男
居民地址 : 广东省广州市天河区
身份证号码是否合法 : true
性别 :男
居民地址 : 广东省广州市天河区
身份证号码是否合法 : true