身份证号码转换
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.lang.String;
public class Test extends JApplet
{
public void init()
{
Container cp=getContentPane();
cp.add(new MyPanel());
}
}
class MyPanel extends JPanel
{
public MyPanel()
{
setLayout(new BorderLayout());
pan3=new JPanel();
pan2=new JPanel();
pan4=new JPanel();
pan1=new JPanel();
lbltitle=new
JLabel("Éí?ÝÖ?ºÅÂë15Î?µ?18Î?ת??",SwingConstants.CENTER);
lblold=new JLabel("15Î?Éí?ÝÖ?ºÅ:");
lblnow=new JLabel("18Î?Éí?ÝÖ?ºÅ:");
lblb=new JLabel("?öÉúÈÕÆÚ:");
lbls=new JLabel("ÐÔ?ð:");
lblbirth=new JLabel();
lblsex=new JLabel();
lblcom=new JLabel("ÇëÊäÈë..",SwingConstants.CENTER);
txtold=new JTextField(20);
lblsin=new JLabel();
btnok=new JButton("ת??");
btninput=new JButton("ÖØÐÂÊäÈë");
pan1.setLayout(new GridLayout(4,2));
pan2.setLayout(new GridLayout(2,1));
pan3.add(lbltitle);
pan1.add(lblold);pan1.add(txtold);pan1.add(lblnow);pan1.add(lblsin
);
pan1.add(lblb);pan1.add(lblbirth);pan1.add(lbls);pan1.add(lblsex);
pan1.setBackground(Color.lightGray);
pan4.add(btnok);pan4.add(btninput);
pan2.add(lblcom);
pan2.add(pan4);
pan2.setBackground(Color.lightGray);
pan1.setBackground(Color.lightGray);
add(pan3,BorderLayout.NORTH);
add(pan1,BorderLayout.CENTER);
add(pan2,BorderLayout.SOUTH);
btnok.addActionListener(new MyActionListener());
btninput.addActionListener(new MyActionListener());
}
private class MyActionListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
if(e.getActionCommand()==btnok.getText())
{
if( check()==true)
{
convert();
lblcom.setText("ת???É??");
}
}
else
again();
}
public boolean check()//ÑéÖ?º?Êý
{
String str=txtold.getText();
int i;
if(str.length()!=15)//ÅÐ?ÏÎ?ÊýÊÇ?ñΪ15Î?
{
lblcom.setText("ÇëÊäÈë15Î?ÓÐÐ?µÄÉí?ÝÖ?ºÅ!");
return false;
}
for(int j=0;j57)
{
lblcom.setText("ÊäÈëµÄºÅÂëº?ÓÐ?Ç??×Ö?û!");
return false;
}
}
return true;
}
public void convert()//ת??º?Êý
{
String birthstr,sexstr,strseven,str,strnew;
birthst int[] code=new int[18] ;
int[] num={2,4,8,5,10,9,7,3,6,1,2,4,8,5,10,9,7};
int sum=0,r=0;
str=txtold.getText();
strseven=str;
sexstr=str;
birthstr="19"+str.substring(6,12);
System.out.println(birthstr);
str=strseven.substring(0,6)+birthstr+sexstr.substring(12,15);
String year,month,day,tempstr;
year=birthstr;month=birthstr;day=birthstr;
year=year.substring(0,4);month=month.substring(4,6);day=day.substring(6,8);
int x,y,z;
x=Integer.parseInt(year);y=Integer.parseInt(month);z=Integer.parseInt(day);
lblbirth.setText(x+"Äê"+y+"ÔÂ"+z+"ÈÕ");
if(x<1900 || x>2000 || y<1 || y>12 || z<1 || z>31)//ÅÐ?ÏÊÇ?ñΪÓÐÐ?µÄÉúÈÕ
{
lblcom.setText("ÄãÊäÈëµÄÉí?ÝÖ?ºÅµÄ?öÉúÈÕÆÚÎ??íÎó!");
return;
}
Integer n;
for(int i=0;i