JAVA 18位身份证号码校验码的算法
public static char doVerify(String id)
{
char pszSrc[]=id.toCharArray();
int iS = 0;
int iW[]={7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2};
char szVerCode[] = new char[]{'1','0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'};
int i;
for(i=0;i<17;i++)
{
iS += (int)(pszSrc[i]-'0') * iW[i];
}
int iY = iS%11;
return szVerCode[iY];
}
相关推荐
-
利用Java正则表达式校验邮箱与手机号
主要是运用java.util.regex类. 复制代码 代码如下: import java.util.regex.Matcher; import java.util.regex.Pattern; public class CheckMobileAndEmail { /** * 验证邮箱地址是否正确 * @param email * @return */ public static boolean checkEmail(String email){ boolean flag = false; tr
-
java累加和校验实现方式16进制(推荐)
已知一个字符串,求该字符串的16进制累加和,已知一段字符串和校验码,校验和累加是否合法,话不多说了直接上代码 public static String makeChecksum(String data) { if (data == null || data.equals("")) { return ""; } int total = 0; int len = data.length(); int num = 0; while (num < len) { Str
-
Java基于正则实现的日期校验功能示例
本文实例讲述了Java基于正则实现的日期校验功能.分享给大家供大家参考,具体如下: private void checkDate() throws IOException { // 4种分隔符 String sep = "[-\\./_]"; // 年份 String strPattern = "^(19[4-9]\\d|20\\d{2})" + sep; strPattern += "("; // 月(1,3,5,7,8,10,12) strP
-
Java struts2 validate用户登录校验功能实现
首先贴一下搭配的环境: 配置: Eclipse4.3.2 jdk1.7_45 Mysql 5.0+ 然后切入正题: 1.login.jsp 主要是使用OGNL 标签 也可使用html form表单,调用LoginAction.action,以post 方式传输. 在LoginaAction 经过判断,然后会有提示信息,需要用到 <s:fielderror/>来显示. <%@ taglib uri="/struts-tags" prefix="s"%
-
Java校验银行卡是否正确的核心代码
多说无益,贴代码: /** * 校验银行卡卡号 * * @param cardId * @return */ public static boolean checkBankCard(String cardId) { char bit = getBankCardCheckCode(cardId .substring(0, cardId.length() - 1)); return cardId.charAt(cardId.length() - 1) == bit; } /** * 从不含校验位的银
-
java使用正则表达校验手机号码示例(手机号码正则)
复制代码 代码如下: public static boolean isMobileNumber(String mobiles) {return Pattern.compile("^((13[0-9])|(15[^4,\\D])|(18[^1^4,\\D]))\\d{8}").matcher(mobiles).matches();}
-
java自定义注解实现前后台参数校验的实例
其实是可以通过@Constraint来限定自定义注解的方法. @Constraint(validatedBy = xxxx.class) 下面是我做的 java自定义注解实现前后台参数校验 的代码示例 对这个感兴趣的,请好好看,好好学: package sonn.sonnannotation; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java.lang.anno
-
java使用计算md5校验码方式比较两个文件是否相同
复制代码 代码如下: public class MD5Check {/*** 默认的密码字符串组合,用来将字节转换成 16 进制表示的字符,apache校验下载的文件的正确性用的就是默认的这个组合*/ protected char hexDigits[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' }; protected MessageDigest messa
-
java身份证合法性校验并提取身份证有效信息
java身份证合法性校验并获取身份证号有效信息,供大家参考,具体内容如下 java身份证合法性校验 /**身份证前6位[ABCDEF]为行政区划数字代码(简称数字码)说明(参考<GB/T 2260-2007 中华人民共和国行政区划代码>): * 该数字码的编制原则和结构分析,它采用三层六位层次码结构,按层次分别表示我国各省(自治区,直辖市,特别行政区). * 市(地区,自治州,盟).县(自治县.县级市.旗.自治旗.市辖区.林区.特区). 数字码码位结构从左至右的含义是: 第一层为AB两位代码表
-
java中文及特殊字符的校验方法
本文实例为大家分享了Android九宫格图片展示的具体代码,供大家参考,具体内容如下 参考链接:Character.UnicodeBlock中cjk的说明详解 1.关于Character.UnicodeBlock的介绍 CJK的意思是"Chinese,Japanese,Korea"的简写 ,实际上就是指中日韩三国的象形文字的Unicode编码 Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS : 4E00-9FBF:Unicode 编码为 U+
随机推荐
- Prototype 工具函数 学习
- 基于JavaScript 声明全局变量的三种方式详解
- HTML实现title 属性换行小技巧
- PowerShell脚本监控文件夹变化实例
- jquery实现倒计时小应用
- AngularJS删除路由中的#符号的方法
- 常见的注册表修改大全第1/3页
- 用vbs实现本地连接禁用/启用脚本代码
- java中文传值乱码问题的解决方法
- C#类的访问修饰符用法分析
- window.top[_CACHE]实现多个jsp页面共享一个js对象
- 微信小程序 数据绑定及运算的简单实例
- chrome浏览器当表单自动填充时如何去除浏览器自动添加的默认样式
- 详解NGINX访问https跳转到http的解决方法
- Apache中解决动态地址跳转死循环的方法
- 简述MySQL与Oracle的区别
- 用Jquery重写windows.alert方法实现思路
- jQuery学习笔记之 Ajax操作篇(一) - 数据加载
- 针对ACCESS漏洞又一发现
- Java中高效的判断数组中某个元素是否存在详解