站内搜索: 请输入搜索关键词

当前页面: 开发资料首页Java 专题15位身份证号码转18位的JSP程序

15位身份证号码转18位的JSP程序

摘要: 15位身份证号码转18位的JSP程序

</td> </tr> <tr> <td width="524" height="35" valign="top" class="ArticleTeitle"> 身份证号码由十七位数字本体码和一位校验码组成,排列顺序从左至右依次为:六位数地址码、
八位数字的出生日期码、三位数字的顺序码和一位数字的校验码。下面是15位身份证号码转18位
的JSP程序。摘自《软件报》2005年第3期。作者:武朝尉
(1)ID15to18.html
<head>
身份证号码转换
</head>
<body>
<form name="form1" method="post" action="ID15to18.jsp">
请输入一个15位身份证号码:<input type="text" name="id">
<input type="submit" name="Submit" value="转换">
</form>
</body>


(2)ID15to18.jsp程序如下:
<%@ page import="java.util.*" contentType="text/html;charset=GBK" %>
<%
String id="",id18="";
id=request.getParameter("id").trim();
id18=changeID(id);
%>

你输入的身份证号码是:<%=id %>

转换为18位后是:<%=id18 %>

<%!
public static String changeID(String ID15){
String ID18="";

if(ID15.length()==18){
ID18=ID15.toUpperCase();
}

if(ID15.length()==15){
int[] w={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1};
char[] A={'1','0','X','9','8','7','6','5','4','3','2'};
String ID17=ID15.substring(0,6)+"19"+ID15.substring(6,15);
int[] ID17Array;
ID17Array=new int[17];
for(int i=0;i<17;i++){
ID17Array[i]=Integer.parseInt(ID17.substring(i,i+1));
}
int s=0;
for(int i=0;i<17;i++){
s=s+ID17Array[i]*w[i];
}
s=s%11;
ID18=ID17+Character.toString(A[s]);
}

return ID18;
}
%>


运行结果:请点击观看演示。
你输入的身份证号码是:110101710307405
转换为18位后是:110101197103074053
</td> <td width="177" valign="top" class="ArticleTeitle">
</td> </tr> <tr> <td height="25" colspan="2" valign="top" class="ArticleTeitle">


↑返回目录
前一篇: 在web中实现任务计划
后一篇: JSP中图片验证的实现