之前的身份證號碼只是做了一些簡單的數字、長度,生日等驗證
最近碰到乙個框架的身份證號碼驗證有些奇怪,在網上搜了一通,終於找到了規則,
所以在這裡記錄一下,一遍以後再用,也分享給廣大開發者.
/**
* 驗證身份證號碼
* * @param *****snumber
* 身份證號碼
*/public static boolean check*****snumber(string *****snumber) else if (*****snumber.length() < 15)
string dt = *****snumber.substring(6, 14);
if (!checkdate(dt, "yyyymmdd"))
// 18位身份證號碼驗證
if (*****snumber.length() == 18)
a = integer.parseint(*****snumber.substring(0, 1)) * 7
+ integer.parseint(*****snumber.substring(1, 2)) * 9
+ integer.parseint(*****snumber.substring(2, 3)) * 10;
a = a + integer.parseint(*****snumber.substring(3, 4)) * 5
+ integer.parseint(*****snumber.substring(4, 5)) * 8
+ integer.parseint(*****snumber.substring(5, 6)) * 4;
a = a + integer.parseint(*****snumber.substring(6, 7)) * 2
+ integer.parseint(*****snumber.substring(7, 8)) * 1
+ integer.parseint(*****snumber.substring(8, 9)) * 6;
a = a + integer.parseint(*****snumber.substring(9, 10)) * 3
+ integer.parseint(*****snumber.substring(10, 11)) * 7
+ integer.parseint(*****snumber.substring(11, 12)) * 9;
a = a + integer.parseint(*****snumber.substring(12, 13)) * 10
+ integer.parseint(*****snumber.substring(13, 14)) * 5
+ integer.parseint(*****snumber.substring(14, 15)) * 8;
a = a + integer.parseint(*****snumber.substring(15, 16)) * 4
+ integer.parseint(*****snumber.substring(16, 17)) * 2;
b = a % 11;
if (b == 2) // 最後一位為校驗位
else
string jym = "10x98765432";
string m = jym.substring(b, b + 1);
if ("x".equals(m))
} else
}} else
} return true;
} /**
* 檢測日期格式
* * @param date
* 待檢測日期
* @param format
* 格式字串
* @return
*/public static boolean checkdate(string date, string format) catch (parseexception e)
return true;
} /**
* 驗證數字格式
* * @param num
* @return
*/public static boolean checknumber(string num)
return false;
}
java驗證身份證號碼
介紹 yyyy mm dd 375 0 十八位 yy mm dd 75 0 十五位 地區 1 9 d 年的前兩位 18 19 23 d 1800 2399 年的後兩位 d 月份 0 1 9 10 11 12 天數 0 2 1 9 10 20 30 31 閏年不能禁止29 三位順序碼 d 兩位順序碼 ...
身份證號碼驗證
說明 驗證身份證的有效性 引數 cid 身份證號碼 返回 地方 出生時間 性別 private string checkcidinfo string cid if cid.length 18 char c cid cid.length 1 bool last false if c 0 c 9 c a...
驗證身份證號碼
好久沒更新了,今天簽到啦。感覺這個驗證挺重要的,也挺常用的,所以分享給需要的朋友。驗證身份證號碼,在網上找到的好東東 function checkidcard idcard var idcard,y,jym var s,m var idcard array new array idcard arra...