C#身份证号码验证是否正确
C#实现身份证号码验证实例代码:
protectedvoidPage_Load(objectsender,EventArgse)
{
stringstr="11010519491231002X";
boolresult=CheckCardId(str);
if(result==true)
{
Response.Write("Yes!");
}
else
{
Response.Write("No!");
}
}
///<summary>
///验证身份证是否正确
///</summary>
///<paramname="str"></param>
///<returns></returns>
privatestaticboolCheckCardId(stringstr)
{
stringnumber17=str.Substring(0,17);
stringnumber18=str.Substring(17);
stringcheck="10X98765432";
int[]num={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};
intsum=0;
for(inti=0;i<number17.Length;i++)
{
sum+=Convert.ToInt32(number17[i].ToString())*num[i];
}
sum%=11;
if(number18.Equals(check[sum].ToString(),StringComparison.OrdinalIgnoreCase))
{
returntrue;
}
else
{
returnfalse;
}
}
18位身份证号码最后一位校验码的计算方法公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。
校验方法:
(1)十七位数字本体码加权求和公式S=Sum(Ai*Wi),i=0,...,16,先对前17位数字的权求和Ai:表示第i位置上的身份证号码数字值Wi:表示第i位置上的加权因子Wi:7910584216379105842
(2)计算模Y=mod(S,11)
(3)通过模得到对应的校验码Y:012345678910校验码:10X98765432
以上就是关于C#实现身份证号码验证的方法,希望对大家的学习有所帮助。
热门推荐
10 朋友新年祝福语大全 简短
11 新年祝福语简短大方兔年
12 搬新家礼物祝福语简短
13 同学见面花束祝福语简短
14 五一假期祝福语幽默简短
15 离职欢送敬酒祝福语简短
16 对学弟的祝福语简短
17 考老师辞职祝福语简短
18 祝福语驱散霉运的话简短