使用Java校验【统一社会信用代码】真假
统一社会信用代码校验规则:
定义一个方法判断统一社会信用代码真假:
/*** 验证机构代码真假** @param orgCode 组织机构信用代码* @return 真返回true 假返回false*/public static boolean checkOrgCode(String orgCode) {//把加权因子定义为一个数组int[] w = {1, 3, 9, 27, 19, 26, 16, 17, 20, 29, 25, 13, 8, 24, 10, 30, 28};//判断长度是否合法if (orgCode.length() != 18) return false;int sum = 0;//遍历加权因子,与组织机构代码每位累乘求和for (int i = 0; i < w.length; i++) {sum += w[i] * toNumByChar(orgCode.charAt(i));}System.out.println(sum);//计算 31 求余int index = 31 - (sum % 31);//机构代码的第18位与计算结果是否相等return toNumByChar(orgCode.charAt(17)) == index;}
处理统一社会信用代码中的字母的方法:
/*** 将字符 转换为 数字** @return 返回十进制的数*/public static int toNumByChar(char c) {return switch (c) {case 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H' -> c - 55;case 'J', 'K', 'L', 'M', 'N' -> c - 56;case 'P', 'Q', 'R' -> c - 57;case 'T', 'U' -> c - 58;case 'W', 'X', 'Y' -> c - 59;case 'I', 'O', 'S', 'V', 'Z' -> {throw new RuntimeException("无法将" + c + "转成数字");}default -> c - 48;};}
使用Java校验【统一社会信用代码】真假相关推荐
- JAVA生成统一社会信用代码和组织机构代码
统一社会信用代码规则如下: 代码如下: 引入jar包下载:https://mvnrepository.com/artifact/cn.hutool/hutool-all/5.8.3 package c ...
- java、正则表达式、php校验“统一社会信用代码”
java import java.util.HashMap; import java.util.Map; /** * Desc: 社会信用代码证 检验 * Created 2016/5/18. */ ...
- JS校验统一社会信用代码的真实性
统一代码的构成 结构 代码及说明 统一社会信用代码来源字符与数值对应关系表 统一社会信用代码相应顺序上对应的加权因子 计算示例 js代码实现 统一社会信用代码:每一个法人和其他组织在全国范围内唯一的. ...
- 前端校验统一社会信用代码
统一社会信用代码规则 由18位的阿拉伯数字或大写英文字母(不使用I.O.Z.S.V)组成: 第1位~第2位.第9位~第18位 [0-9A-HJ-NP-RT-UW-Y] 第3位~第8位,由阿拉伯数字表示 ...
- 使用Java校验【统一社会信用代码】的真假
统一社会信用代码是营业执照注册号.这个是三证合一,一证一码的工商改革结果. 定义一个方法判断统一社会信用代码真假: /*** 验证机构代码真假** @param orgCode 组织机构信用代码* ...
- Python实现统一社会信用代码校验(GB32100-2015)
Python实现统一社会信用代码校验 统一社会信用代码国标校验 统一社会信用代码国标校验规则 示例说明 Python代码实现(仅实现GB- 32100-2015中的规则) 统一社会信用代码国标校验 ...
- 身份证号与统一社会信用代码的校验
身份证号与统一社会信用代码的表单校验 一.校验身份证号 <el-form ref="form" :model="form" :rules="ru ...
- JAVA 身份证校验与统一社会信用代码校验
B话少说,上代码 原理默认大家都懂了,不懂的话可以百度一下 package com.microlinktech.rns.util;import lombok.Getter; import lombok ...
- 组织机构代码和统一社会信用代码校验规则以及java校验工具类
组织机构代码 编码规则编辑 1.全国组织机构代码由八位数字(或大写拉丁字母)本体代码和一位数字(或大写拉丁字母)校验码组成. 本体代码采用系列(即分区段)顺序编码方法. 校验码按照以下公式计算: C9 ...
最新文章
- javascript高级程序设计之变量、作用域和内存问题
- git学习创建项目仓库
- kali64位下载怎么是AMD_AMD平台虚拟机安装macOS Sierra方法
- iOS 后台返回json解析出现的null的解决办法
- 阿里云视频云 Retina 多媒体 AI 体验馆开张啦
- 阿里云的工程师要被祭天了?
- 处理中文乱码以及登陆验证的过滤器Filter(建议收藏)
- svn 仓库 本地 连接_建立Subversion仓库在本地如何操作?
- 手机号段199/198/166,横空出世
- 广义线性混合模型GLMM
- 在线安装提示失败显示系统镜像MD5不正确怎么办
- 前端工程师为什么会这么值钱?原来真相在这里
- MySQL原理与实践(四):由数据库事务引出数据库隔离级别
- 微信小程序getPhoneNumber获取手机号,解决code失效问题
- 基于粒子群算法的水电站中长期发电优化调度
- Android系统安全 — 3.1-展锐平台secureboot安全启动流程和使用
- 大数据江湖之即席查询与分析(上篇)--即席查询与分析的前世今生
- dorado7.x积累
- [Django]bulk_create 探究
- App上传到应用宝的一些问题
热门文章
- Golang 基础:原生并发 goroutine channel 和 select 常见使用场景
- ACM与IEEE双Fellow、华人女计算机科学家周以真:可信 AI,未来可期
- 115道Java面试题
- UDP都是全双工通信的吗
- 山东大学科技文献期末复习(个人速成向)
- RabbitMQ None of the specified endpoints were reachable 错误 解决方案
- 每当图片传过来时进行对比_每当应用开始使用Mac的网络摄像头时如何获取通知...
- 汇编语言上机的4个步骤
- UOS服务器操作系统部署EKL
- 数数(数学题运算分配律)