亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

C#實現身份證號碼驗證的方法

2019-10-29 21:45:41
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了C#實現身份證號碼驗證的方法,通過封裝的類文件實例化調用實現了對身份證號碼的驗證,是非常實用的技巧,需要的朋友可以參考下
 

本文實例講述了C#實現身份證號碼驗證的方法。分享給大家供大家參考。具體實現方法如下:

隨著現在互聯網的發展,越來越多的注冊用戶的地方都用到了身份證,那么對于輸入的身份證如何驗證呢?看下面的代碼,其實很簡單。

主要注意的是,目前的身份證分為16和18位,然后分別驗證校驗位,省份,生日即可。

主要類如下:

復制代碼代碼如下:
/// <summary>  
/// 驗證身份證號碼類  
/// </summary>  
public class IDCardValidation  
{  
        /// <summary>  
        /// 驗證身份證合理性  
        /// </summary>  
        /// <param name="Id"></param>  
        /// <returns></returns>  
        public bool CheckIDCard(string idNumber)  
        {  
            if (idNumber.Length == 18)  
            {  
                bool check = CheckIDCard18(idNumber);  
                return check;  
            }  
            else if (idNumber.Length == 15)  
            {  
                bool check = CheckIDCard15(idNumber);  
                return check;  
            }  
            else  
            {  
                return false;  
            }  
        }  
  
  
        /// <summary>  
        /// 18位身份證號碼驗證  
        /// </summary>  
        private bool CheckIDCard18(string idNumber)  
        {  
            long n = 0;  
            if (long.TryParse(idNumber.Remove(17), out n) == false   
                || n < Math.Pow(10, 16) || long.TryParse(idNumber.Replace('x', '0').Replace('X', '0'), out n) == false)  
            {  
                return false;//數字驗證  
            }  
            string address = "11x22x35x44x53x12x23x36x45x54x13x31x37x46x61x14x32x41x50x62x15x33x42x51x63x21x34x43x52x64x65x71x81x82x91";  
            if (address.IndexOf(idNumber.Remove(2)) == -1)  
            {  
                return false;//省份驗證  
            }  
            string birth = idNumber.Substring(6, 8).Insert(6, "-").Insert(4, "-");  
            DateTime time = new DateTime();  
            if (DateTime.TryParse(birth, out time) == false)  
            {  
                return false;//生日驗證  
            }  
            string[] arrVarifyCode = ("1,0,x,9,8,7,6,5,4,3,2").Split(',');  
            string[] Wi = ("7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2").Split(',');  
            char[] Ai = idNumber.Remove(17).ToCharArray();  
            int sum = 0;  
            for (int i = 0; i < 17; i++)  
            {  
                sum += int.Parse(Wi[i]) * int.Parse(Ai[i].ToString());  
            }  
            int y = -1;  
            Math.DivRem(sum, 11, out y);  
            if (arrVarifyCode[y] != idNumber.Substring(17, 1).ToLower())  
            {  
                return false;//校驗碼驗證  
            }  
            return true;//符合GB11643-1999標準  
        }  
  
  
        /// <summary>  
        /// 16位身份證號碼驗證  
        /// </summary>  
        private bool CheckIDCard15(string idNumber)  
        {  
            long n = 0;  
            if (long.TryParse(idNumber, out n) == false || n < Math.Pow(10, 14))  
            {  
                return false;//數字驗證  
            }  
            string address = "11x22x35x44x53x12x23x36x45x54x13x31x37x46x61x14x32x41x50x62x15x33x42x51x63x21x34x43x52x64x65x71x81x82x91";  
            if (address.IndexOf(idNumber.Remove(2)) == -1)  
            {  
                return false;//省份驗證  
            }  
            string birth = idNumber.Substring(6, 6).Insert(4, "-").Insert(2, "-");  
            DateTime time = new DateTime();  
            if (DateTime.TryParse(birth, out time) == false)  
            {  
                return false;//生日驗證  
            }  
            return true;  
        }   
}

測試調用:
復制代碼代碼如下:
IDCardValidation card = new IDCardValidation(); 

 

//從網上身份證大全找來的,驗證結果為true  
bool result = card.CheckIDCard("522324197508045617"); 

Console.WriteLine(result.ToString());  
//隨便編的,驗證結果為false  
result = card.CheckIDCard("612427199901281214"); 

Console.WriteLine(result.ToString()); 

Console.ReadLine();

 

希望本文所述對大家的C#程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品第一页在线| 精品激情国产视频| 成人久久一区二区| 98精品国产自产在线观看| 国产欧美精品一区二区三区-老狼| 国产精品高潮粉嫩av| 久久久久久国产免费| 一区二区三区回区在观看免费视频| 欧美老肥婆性猛交视频| 亚洲图片制服诱惑| 亚洲午夜色婷婷在线| 久99久在线视频| 日本亚洲精品在线观看| 国产精品热视频| 欧美一级大胆视频| 91高清在线免费观看| 韩国19禁主播vip福利视频| 亚洲黄页视频免费观看| 黄色成人av网| 国a精品视频大全| 国产精品一区二区女厕厕| 久久精品成人一区二区三区| 91免费人成网站在线观看18| 国产偷国产偷亚洲清高网站| 人体精品一二三区| 久热精品视频在线免费观看| 欧美午夜激情视频| 日韩在线观看免费| 红桃视频成人在线观看| 国产精品jvid在线观看蜜臀| 日本伊人精品一区二区三区介绍| 欧美在线亚洲一区| 欧美国产日韩中文字幕在线| 久久久久久久爱| 亚洲免费成人av电影| 欧美激情亚洲自拍| 91国产精品电影| 国内精品久久久久久影视8| 欧美日本高清视频| 欧美亚洲视频在线看网址| 亚洲人成电影网站色xx| 精品久久久免费| 久久99精品久久久久久琪琪| 日韩av在线播放资源| 91高清免费在线观看| 欧美一区二三区| 亚洲精品白浆高清久久久久久| 欧美日本亚洲视频| 成人免费淫片aa视频免费| xxx一区二区| 欧美在线观看www| 国内精品在线一区| 欧美网站在线观看| 久久精品国产69国产精品亚洲| 欧美性高跟鞋xxxxhd| 欧洲美女免费图片一区| 国产精品激情av电影在线观看| 激情久久av一区av二区av三区| 日韩成人小视频| 欧美最猛黑人xxxx黑人猛叫黄| 国产精品久久精品| 97成人精品视频在线观看| 亚洲女人天堂色在线7777| 在线成人激情黄色| 国产成人精品av在线| 亚洲精品之草原avav久久| 欧美巨猛xxxx猛交黑人97人| 在线日韩av观看| 欧美黄色三级网站| 最近2019中文字幕mv免费看| 18性欧美xxxⅹ性满足| 性夜试看影院91社区| 国语自产精品视频在线看抢先版图片| 欧美劲爆第一页| 国产美女直播视频一区| 日韩精品视频中文在线观看| 亚洲国产欧美一区二区三区同亚洲| 欧美午夜精品伦理| 亚洲男人天堂手机在线| 国模吧一区二区三区| 欧美激情国产精品| 亚洲精品丝袜日韩| 日韩中文字幕视频在线| 91在线色戒在线| 精品夜色国产国偷在线| 性欧美亚洲xxxx乳在线观看| 欧美人与性动交a欧美精品| 国产97在线视频| 国产日韩综合一区二区性色av| 欧美大片免费观看在线观看网站推荐| 国产z一区二区三区| 亚洲女人被黑人巨大进入al| 97人人模人人爽人人喊中文字| 日韩成人av在线播放| 久久久久久免费精品| 欧美激情一二三| 久久久国产精品亚洲一区| 欧美成人黑人xx视频免费观看| 日韩小视频网址| 欧美高清视频在线| 亚洲一区二区在线播放| 亚洲午夜未删减在线观看| 亚洲福利在线播放| 在线精品视频视频中文字幕| 日韩一区在线视频| 久久影视电视剧凤归四时歌| 日本不卡视频在线播放| 欧美激情区在线播放| 在线观看视频亚洲| 中文在线不卡视频| 中国日韩欧美久久久久久久久| 久久久精品视频成人| 另类少妇人与禽zozz0性伦| 亚洲视频在线免费看| 色综合久久久久久中文网| 欧美国产日韩一区二区| 亚洲国产精品久久久久久| 最近2019好看的中文字幕免费| www.日韩免费| 成人字幕网zmw| 精品福利在线观看| 国产精品视频地址| 欧美日韩国产精品一区二区不卡中文| www.亚洲一二| 久久久久999| 亚洲自拍av在线| 91日韩在线播放| 91嫩草在线视频| 性色av一区二区咪爱| 久久深夜福利免费观看| 日韩久久免费视频| 精品久久久久久久久久久久| 国产伦精品免费视频| 大胆人体色综合| 精品国产一区二区三区久久狼5月| 久久伊人免费视频| 久久久国产一区| 亚洲欧美三级伦理| 中文日韩电影网站| 色偷偷偷综合中文字幕;dd| 在线日韩精品视频| 最近日韩中文字幕中文| 成人www视频在线观看| 国产精品美女午夜av| 国内精品伊人久久| 91久久精品久久国产性色也91| 中文字幕最新精品| 久久99国产精品久久久久久久久| 国产婷婷成人久久av免费高清| 久久99久国产精品黄毛片入口| 精品无人区太爽高潮在线播放| 国产九九精品视频| 国产mv免费观看入口亚洲| 国产999精品| 久久综合久中文字幕青草| 欧美日韩国产精品一区二区不卡中文| 久久夜精品香蕉| 国产97在线播放| 成人在线视频网站| 热久久免费视频精品| 国产成人+综合亚洲+天堂| 国产精品久久一区| 欧洲亚洲免费视频| 日韩精品有码在线观看|