国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#身份證號碼驗證是否正確

2020-01-24 01:26:33
字體:
來源:轉載
供稿:網友

C#實現身份證號碼驗證實例代碼:

protected void Page_Load(object sender, EventArgs e){  string str = "11010519491231002X";  bool result = CheckCardId(str);  if (result == true)  {    Response.Write("Yes!");  }  else  {    Response.Write("No!");  }}  /// <summary>/// 驗證身份證是否正確 /// </summary> /// <param name="str"></param> /// <returns></returns> private static bool CheckCardId(string str){  string number17 = str.Substring(0, 17);  string number18 = str.Substring(17);  string check = "10X98765432";  int[] num = { 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 };  int sum = 0;  for (int i = 0; i < number17.Length; i++)  {    sum += Convert.ToInt32(number17[i].ToString()) * num[i];  }  sum %= 11;  if (number18.Equals(check[sum].ToString(), StringComparison.OrdinalIgnoreCase))  {    return true;  }  else  {    return false;  }}

18位身份證號碼最后一位校驗碼的計算方法公民身份號碼是特征組合碼,由十七位數字本體碼和一位校驗碼組成。排列順序從左至右依次為:六位數字地址碼,八位數字出生日期碼,三位數字順序碼和一位數字校驗碼。

校驗方法:

(1)十七位數字本體碼加權求和公式S = Sum(Ai * Wi), i = 0, ... , 16 ,先對前17位數字的權求和Ai:表示第i位置上的身份證號碼數字值Wi:表示第i位置上的加權因子Wi: 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2

(2)計算模Y = mod(S, 11)

(3)通過模得到對應的校驗碼Y: 0 1 2 3 4 5 6 7 8 9 10校驗碼: 1 0 X 9 8 7 6 5 4 3 2

以上就是關于C#實現身份證號碼驗證的方法,希望對大家的學習有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 朝阳区| 宁强县| 项城市| 伊春市| 视频| 浪卡子县| 泗洪县| 湖州市| 攀枝花市| 磐安县| 六盘水市| 杨浦区| 沙洋县| 正宁县| 磴口县| 余干县| 阳西县| 英德市| 三门县| 昔阳县| 邯郸县| 吴桥县| 方城县| 虎林市| 永吉县| 察雅县| 成武县| 山阴县| 绵竹市| 永和县| 瓮安县| 宽甸| 阜阳市| 江北区| 南康市| 宜城市| 万宁市| 博野县| 宣城市| 高阳县| 日土县|