身份证15位号码转18位——C#篇

        private string CheckCardNo(string CardNo)
        {
            string txtCardNo=string.Empty;
            int[] a={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};
            string b="10X98765432";

            if(CardNo.Length==15)
            {
                int Sum=0;
                txtCardNo=CardNo.Substring(0,6) + "19" + CardNo.Substring(6);
                for(int i=0;i<17;i++)
                {
                    Sum+=int.Parse(txtCardNo.Substring(i,1).ToString()) * a[i];
                }

                int yi=Sum % 11;
                txtCardNo+=b.Substring(yi,1);
            }
            else
                txtCardNo=CardNo;

            return txtCardNo;
        }


[本日志由 dashu126 于 2007-01-24 12:01 AM 编辑]
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: 身份证 转化 C#
相关日志:

评论: 0 | 引用: 0 | 查看次数: 9336
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 开启 | [img]标签 开启