C#验证身份证号码正确性的实例代码(收藏)

发布时间 - 2026-01-11 02:29:54    点击率:

今天在QQ空间看到一篇关于C#语言验证18位身份证号码的验证方法和实例代码,抽了些时间学习了一下,个人觉得还不错,所以把它记了下来,方便以后使用!

18位号码:

private static bool CheckIDCard18(string Id)
    {
      long n = 0;
      if (long.TryParse(Id.Remove(17), out n) == false || n < Math.Pow(10, 16) || long.TryParse(Id.Replace('x', '0').Replace('X', '0'), out n) == false)
      {
        return false;
      }
      string address = "11x22x35x44x53x12x23x36x45x54x13x31x37x46x61x14x32x41x50x62x15x33x42x51x63x21x34x43x52x64x65x71x81x82x91";
      if (address.IndexOf(Id.Remove(2)) == -1)
      {
        return false;
      }
      string birth = Id.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 = Id.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] != Id.Substring(17, 1).ToLower())
      {
        return false;
      }
      return true;//正确
    }

15位号码:

private static bool CheckIDCard15(string Id)
    {
      long n = 0;
      if (long.TryParse(Id, out n) == false || n < Math.Pow(10, 14))
      {
        return false;
      }
      string address = "11x22x35x44x53x12x23x36x45x54x13x31x37x46x61x14x32x41x50x62x15x33x42x51x63x21x34x43x52x64x65x71x81x82x91";
      if (address.IndexOf(Id.Remove(2)) == -1)
      {
        return false;
      }
      string birth = Id.Substring(6, 6).Insert(4, "-").Insert(2, "-");
      DateTime time = new DateTime();
      if (DateTime.TryParse(birth, out time) == false)
      {
        return false;
      }
      return true;//正确
    } 

总结

以上所述是小编给大家介绍的C#验证身份证号码是否正确,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# C#验证身份证号码  # C#实现身份证号码验证的方法  # C#实现验证身份证是否合法的方法  # C#验证身份证的函数  # C#身份证号码验证是否正确  # 使用C#写了一个可以推算火车票身份证号码的小程序  # 基于C#技术实现身份证识别功能  # C#身份证识别相关技术功能详解  # C#实现身份证验证功能的示例代码  # C#实现身份证实名认证接口的示例代码  # 小编  # 身份证号码  # 在此  # 把它  # 给大家  # 还不错  # 所述  # 抽了  # 给我留言  # 感谢大家  # 是否正确  # 疑问请  # 有任何  # 一篇关于  # string  # Id  # long  # bool  # static  # false 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 成都品牌网站制作公司,成都营业执照年报网上怎么办理?  Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册  高端网站建设与定制开发一站式解决方案 中企动力  如何用好域名打造高点击率的自主建站?  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  如何做网站制作流程,*游戏网站怎么搭建?  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明  Laravel如何安装Breeze扩展包_Laravel用户注册登录功能快速实现【流程】  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  Laravel如何实现用户密码重置功能?(完整流程代码)  利用vue写todolist单页应用  PythonWeb开发入门教程_Flask快速构建Web应用  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  php做exe能调用系统命令吗_执行cmd指令实现方式【详解】  Laravel怎么配置不同环境的数据库_Laravel本地测试与生产环境动态切换【方法】  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  Laravel怎么配置.env环境变量_Laravel生产环境敏感数据保护与读取【方法】  微信小程序 require机制详解及实例代码  Laravel的Blade指令怎么自定义_创建你自己的Laravel Blade Directives  JavaScript中如何操作剪贴板_ClipboardAPI怎么用  如何实现建站之星域名转发设置?  瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口  ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集  如何用JavaScript实现文本编辑器_光标和选区怎么处理  深圳网站制作平台,深圳市做网站好的公司有哪些?  手机软键盘弹出时影响布局的解决方法  个人摄影网站制作流程,摄影爱好者都去什么网站?  Laravel如何使用Spatie Media Library_Laravel图片上传管理与缩略图生成【步骤】  Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程  如何挑选优质建站一级代理提升网站排名?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  微信小程序 配置文件详细介绍  简历在线制作网站免费版,如何创建个人简历?  微信小程序 canvas开发实例及注意事项  javascript如何操作浏览器历史记录_怎样实现无刷新导航  如何用美橙互联一键搭建多站合一网站?  Laravel DB事务怎么使用_Laravel数据库事务回滚操作  Laravel怎么返回JSON格式数据_Laravel API资源Response响应格式化【技巧】  Firefox Developer Edition开发者版本入口  Python制作简易注册登录系统  如何为不同团队 ID 动态生成多个独立按钮  浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】  Python图片处理进阶教程_Pillow滤镜与图像增强  中山网站制作网页,中山新生登记系统登记流程?  javascript中对象的定义、使用以及对象和原型链操作小结  Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道  JavaScript如何实现错误处理_try...catch如何捕获异常?  太平洋网站制作公司,网络用语太平洋是什么意思?  Laravel如何实现API资源集合?(Resource Collection教程)