C#中身份证验证的功能模块(18位)
来源:互联网 发布:软件打包 编辑:程序博客网 时间:2024/06/04 08:13
一段简单的身份证校验代码,由身份证的前17位计算第18位是否合法,作为处理身份证号的第一步。
具体算法参看:百度百科
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace IdCard{ public partial class Form1 : Form { public Form1() { InitializeComponent(); } private bool CheckId(string id) { int[] wQuan={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2}; string checkWei = "10X98765432"; string number17 = id.Substring(0, 17); string number18 = id.Substring(17); int sum=0; for (int i = 0; i < 17; i++) { sum+=Convert.ToInt32(number17[i].ToString()) * wQuan[i]; } int mod = sum % 11; string result = checkWei[mod].ToString(); return (number18.Equals(result, StringComparison.OrdinalIgnoreCase)); } private void button1_Click(object sender, EventArgs e) { string id = txtId.Text.Trim(); if (id.Length == 18) { if (this.CheckId(id)) { MessageBox.Show("合法"); } else { MessageBox.Show("不合法"); } } else { MessageBox.Show("身份证号码输入有误!"); return; } } private void txtId_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar < '0' || e.KeyChar > '9') { e.Handled = true; //阻止数字以外字符 } if ((txtId.SelectionStart == 17)&& (e.KeyChar == 'x' || e.KeyChar == 'X')) { e.Handled = false; //允许第18位为x/X } if (e.KeyChar == 8) { e.Handled = false; //允许backspace输入 } } }}
0 0
- C#中身份证验证的功能模块(18位)
- C#实现的18位身份证格式验证算法
- C#实现的18位身份证格式验证算法
- C#实现的18位身份证格式验证算法
- C#实现的18位身份证格式验证算法
- C#实现的18位身份证格式验证算法
- C#实现的18位身份证格式验证算法
- C#实现的18位身份证格式验证算法[转载]
- C#实现的18位身份证格式验证算法[转载]
- C#实现的18位身份证格式验证算法
- C#实现的18位身份证格式验证算法
- C#实现的18位身份证格式验证算法[转载]
- C#实现的18位身份证格式验证算法
- C#实现的18位身份证格式验证算法
- C#实现的18位身份证格式验证算法
- C#实现的18位身份证格式验证算法
- C#实现的18位身份证格式验证算法
- C#实现的18位身份证格式验证算法
- Say -大前端江湖旗下异想社区上线
- 02. 方法
- 3G调试日记
- 第五周项目2-分数类的雏形
- HDU解题报告——1014
- C#中身份证验证的功能模块(18位)
- 线程睡眠sleep()方法和线程让步yield()方法的主要区别
- Web页面的字体介绍
- QQ for linux 腾讯值得深思
- 牛津词典应用程序/ 网址
- ora_dba sysdba & dba的辨析
- Codeforces Round #238 (Div. 2)(位运算)
- 远程桌面带入声音
- 03. 实例方法和实例变量