浏览代码

add idcard validate

Looly 5 年之前
父节点
当前提交
3d11e2baa2
共有 2 个文件被更改,包括 7 次插入0 次删除
  1. 1 0
      CHANGELOG.md
  2. 6 0
      hutool-core/src/main/java/cn/hutool/core/util/IdcardUtil.java

+ 1 - 0
CHANGELOG.md

@@ -16,6 +16,7 @@
 * 【core   】     增加IoUtil.writeObj(issue#I1FZIE)
 * 【core   】     增加FastStringWriter
 * 【core   】     增加NumberUtil.ceilDiv方法(pr#858@Github)
+* 【core   】     IdcardUtil增加省份校验(issue#859@Github)
 
 ### Bug修复
 * 【core   】     修复URLBuilder中请求参数有`&`导致的问题(issue#850@Github)

+ 6 - 0
hutool-core/src/main/java/cn/hutool/core/util/IdcardUtil.java

@@ -218,6 +218,12 @@ public class IdcardUtil {
 			return false;
 		}
 
+		// 省份
+		final String proCode = idCard.substring(0, 2);
+		if (null == CITY_CODES.get(proCode)) {
+			return false;
+		}
+
 		//校验生日
 		if (false == Validator.isBirthday(idCard.substring(6, 14))) {
 			return false;