类 IDCardUtils
java.lang.Object
dev.utils.common.validator.IDCardUtils
detail: 居民身份证工具类
- 作者:
- AbrahamCaiJin, Ttt
-
字段概要
字段 -
方法概要
修饰符和类型方法说明static Stringconvert15CardTo18(String idCard) 将 15 位身份证号码转换为 18 位static intgetAgeByIdCard(String idCard) 根据身份编号获取年龄static StringgetBirthByIdCard(String idCard) 根据身份编号获取生日static StringgetBirthdayByIdCard(String idCard) 根据身份编号获取生日static StringgetCheckCode18(int sum) 将 POWER 和值与 11 取模获取余数进行校验码判断static StringgetDateByIdCard(String idCard) 根据身份编号获取生日 ( 天数 )static StringgetGenderByIdCard(String idCard) 根据身份编号获取性别static StringgetMonthByIdCard(String idCard) 根据身份编号获取生日 ( 月份 )static intgetPowerSum(int[] data) 将身份证的每位和对应位的加权因子相乘之后, 再获取和值static StringgetProvinceByIdCard(String idCard) 根据身份编号获取户籍省份static StringgetYearByIdCard(String idCard) 根据身份编号获取生日 ( 年份 )static booleanvalidateCard(String idCard) 验证身份证是否合法static booleanvalidateHKCard(String idCard) 验证香港身份证号码 ( 部份特殊身份证无法检查 ) 身份证前 2 位为英文字符, 如果只出现一个英文字符则表示第一位是空格, 对应数字 58 前 2 位英文字符 A-Z 分别对应数字 10-35 最后一位校验码为 0-9 的数字加上字符 "A", "A" 代表 10 将身份证号码全部转换为数字, 分别对应乘 9-1 相加的总和, 整除 11 则证件号码有效static String[]validateIdCard10(String idCard) 判断 10 位数的身份证号, 是否合法static booleanvalidateIdCard15(String idCard) 身份证校验规则, 验证 15 位身份编码是否合法static booleanvalidateIdCard18(String idCard) 身份证校验规则, 验证 18 位身份编码是否合法static booleanvalidateTWCard(String idCard) 验证台湾身份证号码
-
字段详细资料
-
CHINA_ID_MIN_LENGTH
public static final int CHINA_ID_MIN_LENGTH- 另请参阅:
-
CHINA_ID_MAX_LENGTH
public static final int CHINA_ID_MAX_LENGTH- 另请参阅:
-
-
方法详细资料
-
validateIdCard15
身份证校验规则, 验证 15 位身份编码是否合法- 参数:
idCard- 待验证身份证号码- 返回:
trueyes,falseno
-
validateIdCard18
身份证校验规则, 验证 18 位身份编码是否合法- 参数:
idCard- 待验证身份证号码- 返回:
trueyes,falseno
-
convert15CardTo18
将 15 位身份证号码转换为 18 位- 参数:
idCard- 15 位身份编码- 返回:
- 18 位身份编码
-
validateTWCard
验证台湾身份证号码- 参数:
idCard- 身份证号码- 返回:
trueyes,falseno
-
validateHKCard
验证香港身份证号码 ( 部份特殊身份证无法检查 ) 身份证前 2 位为英文字符, 如果只出现一个英文字符则表示第一位是空格, 对应数字 58 前 2 位英文字符 A-Z 分别对应数字 10-35 最后一位校验码为 0-9 的数字加上字符 "A", "A" 代表 10 将身份证号码全部转换为数字, 分别对应乘 9-1 相加的总和, 整除 11 则证件号码有效- 参数:
idCard- 身份证号码- 返回:
trueyes,falseno
-
validateIdCard10
判断 10 位数的身份证号, 是否合法- 参数:
idCard- 身份证号码- 返回:
trueyes,falseno
-
validateCard
验证身份证是否合法- 参数:
idCard- 身份证号码- 返回:
trueyes,falseno
-
getAgeByIdCard
根据身份编号获取年龄- 参数:
idCard- 身份编号- 返回:
- 年龄
-
getBirthByIdCard
根据身份编号获取生日- 参数:
idCard- 身份编号- 返回:
- 生日 (yyyyMMdd)
-
getBirthdayByIdCard
根据身份编号获取生日- 参数:
idCard- 身份编号- 返回:
- 生日 (yyyyMMdd)
-
getYearByIdCard
根据身份编号获取生日 ( 年份 )- 参数:
idCard- 身份编号- 返回:
- 生日 (yyyy)
-
getMonthByIdCard
根据身份编号获取生日 ( 月份 )- 参数:
idCard- 身份编号- 返回:
- 生日 (MM)
-
getDateByIdCard
根据身份编号获取生日 ( 天数 )- 参数:
idCard- 身份编号- 返回:
- 生日 (dd)
-
getGenderByIdCard
根据身份编号获取性别- 参数:
idCard- 身份编号- 返回:
- 性别 男 (M)、女 (F)、未知 (N)
-
getProvinceByIdCard
根据身份编号获取户籍省份- 参数:
idCard- 身份编码- 返回:
- 省级编码
-
getPowerSum
public static int getPowerSum(int[] data) 将身份证的每位和对应位的加权因子相乘之后, 再获取和值- 参数:
data- byte[] 数据- 返回:
- 身份证编码, 加权引子
-
getCheckCode18
将 POWER 和值与 11 取模获取余数进行校验码判断- 参数:
sum-getPowerSum(int[])- 返回:
- 校验位
-