martes, 25 de marzo de 2014

Sacar CURP en JAVA

Bueno ahorita vengo con otra entrada parecida a la que puse de como sacar el CURP pero nooo con un FOR y bueno recordé si una cosa se puede en un lenguaje, por que no en otro.

Recordé el str_replace que a veces empleo en php xD!.

Abrimos nuestro IDE netbeans con nuestro JDK de java más actual.
Abrimos un nuevo proyecto como cualquier otro en consola y en la parte de proyects, abrimos las pestañitas hasta ver Soure packages donde están las clases en este caso el método Main. agregamos un JFrame como se ve en la imagen.


Ahora para acceder a el JFrame cuando arranquemos el programa en modo DEBUG o EXECUTE pues instan-ciaremos el JFRAME en el Main y le diremos que lo queremos ver.

YA, ahora vamos a codear un poco.
Como se saca el CURP bueno más bien que datos necesitamos?

NOMBRE APELLIDO PATERNO y MATERNO.
LUGAR DE NACIMIENTO.
FECHA DE NACIMIENTO.
SEXO.
y bueno eso creo.

PONDREMOS 4 JTEXFIELD.

jTextField1 para Nombre
jTextField2 para apellido paterno.
jTextField3 para apellido materno.
jTextField4 para mostrar el curp.

5 jComboBox.

jComboBox1 para año
jComboBox2 para mes
jComboBox3 para dia
jComboBox4 para entidad federativa
jComboBox5 para sexo.

1 Boton

Para ejecutar todo lo que pusimos. xD.

Bueno los pegamos en nuestro NewJFrame y se vera asi......
OJO... poner etiquetas (LABEL) para saber que cosa es cada cosa..... :S jajaja.

NOTA hay que quitarles los valores a los jtxtfield o mejor dicho los nombres para que no digan jTextField y a los combo box quitarles las letras que dicen Item1, Item2 y eso lo hacen borrando lo que dice en esta parte.


Bueno ya que hicimos esto nos vamos al sourse code del JFRAME.

y en el constructor en esta parte:


lo que queremos que muestren cada jComboBox.

el primero mostrará el año:

ponemos esto:

 for (int a = 1950; a<=2013 ; a++)
        {
            jComboBox1.addItem( Integer.toString( a ) );
        add( jComboBox1 );
        }  
el segundo mes y el tercero dias.

jComboBox2.addItem("01");
        jComboBox2.addItem("02");
        jComboBox2.addItem("03");
        jComboBox2.addItem("04");
        jComboBox2.addItem("05");
        jComboBox2.addItem("06");
        jComboBox2.addItem("07");
        jComboBox2.addItem("08");
        jComboBox2.addItem("09");
        jComboBox2.addItem("10");
        jComboBox2.addItem("11");
        jComboBox2.addItem("12");
       
        jComboBox3.addItem("01");
        jComboBox3.addItem("02");
        jComboBox3.addItem("03");
        jComboBox3.addItem("04");
        jComboBox3.addItem("05");
        jComboBox3.addItem("06");
        jComboBox3.addItem("07");
        jComboBox3.addItem("08");
        jComboBox3.addItem("09");
        jComboBox3.addItem("10");
        jComboBox3.addItem("11");
        jComboBox3.addItem("12");
        jComboBox3.addItem("13");
        jComboBox3.addItem("14");
        jComboBox3.addItem("15");
        jComboBox3.addItem("16");
        jComboBox3.addItem("17");
        jComboBox3.addItem("18");
        jComboBox3.addItem("19");
        jComboBox3.addItem("20");
        jComboBox3.addItem("21");
        jComboBox3.addItem("22");
        jComboBox3.addItem("23");
        jComboBox3.addItem("24");
        jComboBox3.addItem("25");
        jComboBox3.addItem("26");
        jComboBox3.addItem("27");
        jComboBox3.addItem("28");
        jComboBox3.addItem("29");
        jComboBox3.addItem("30");
        jComboBox3.addItem("31");

Bueno ahora que.....el jComboBox 4 entidad federativa y el 5 el sexo:

jComboBox4.addItem("AGUAS CALIENTES"); //AS
        jComboBox4.addItem("BAJA CALIFORNIA"); //BC
        jComboBox4.addItem("B. CALIFORNIA SUR"); //BS
        jComboBox4.addItem("CAMPECHE"); //CC
        jComboBox4.addItem("COAHUILA"); //CL
        jComboBox4.addItem("COLIMA"); // CM
        jComboBox4.addItem("CHIAPAS"); // CS
        jComboBox4.addItem("CHIHUAHUA"); //ch
        jComboBox4.addItem("DISTRITO FEDERAL"); // D,F
        jComboBox4.addItem("DURANGO"); //DG
        jComboBox4.addItem("GUANAJUATO"); //gt
        jComboBox4.addItem("GUERRERO"); //GR
        jComboBox4.addItem("HIDALGO"); //HG
        jComboBox4.addItem("JALISCO"); //JC
        jComboBox4.addItem("ESTADO DE MEX"); //MC
        jComboBox4.addItem("MICHOACAN"); //MN
        jComboBox4.addItem("MORELOS"); //MS
        jComboBox4.addItem("NAYARIT"); //NT
        jComboBox4.addItem("NUEVO LEON"); //NL
        jComboBox4.addItem("OAXACA"); // OC
        jComboBox4.addItem("PUEBLA"); // PL
        jComboBox4.addItem("QUERERTARO"); //QT
        jComboBox4.addItem("QUINTANA ROO"); //QR
        jComboBox4.addItem("SAN LUIS POTOSI"); // SP
        jComboBox4.addItem("SINALOA");// SL
        jComboBox4.addItem("SONORA"); // SR
        jComboBox4.addItem("TABASCO"); //TC
        jComboBox4.addItem("TAMAULIPAS"); //TS
        jComboBox4.addItem("TLAXCALA"); // TL
        jComboBox4.addItem("VERACRUZ"); //VZ
        jComboBox4.addItem("YUCATAN"); // YN
        jComboBox4.addItem("ZACATECAS"); // SZ
        jComboBox4.addItem("NACIDO EXTRANJERO");  //NE
       
       
        jComboBox5.addItem("H");
        jComboBox5.addItem("M");

Ahora veamos que más, a!!! si un radio button para seleccionar la ejecucion del CURP para que vean como se hace y otro ara el RFC aaa!!!! y agregamos un button group


El button group lo agregamos al formulario pero no aparecerá nada pero esto es normal ahora en el code en el constructor ponemos esto.
OJO se agregaran los radio button tantos como lo que agregues en tu JFRAME solo puse dos y queda así.


Bueno ya ahora nos vamos a la parte del boton, abrimos el formulario en modo diseño y le damos 2 clicks al botón de ejecutar yo le puse un nombre de ok. xD pero por default se llama jButton1ActionPerformed

Como ven en la imagen se ve que se ejecutara el metodo Curp() para sacar el curp. pero vamos a crearlo para que deje de marcar que no existe xD.

creamos el método Curp() en una parte que este afuera de un método arriba del Main del JFRAME para que vean a lo que me refiero y pondremos una variable global arriba (AFUERA) del método Curp();


String che;
    public void Curp()
    {
         String pat = this.jTextField2.getText();
        String mat = this.jTextField3.getText();
        String nom = this.jTextField1.getText();
        String a = this.jComboBox1.getSelectedItem().toString();
        String b = this.jComboBox2.getSelectedItem().toString();
        String c = this.jComboBox3.getSelectedItem().toString();
        String d = this.jComboBox5.getSelectedItem().toString();
        String e = this.jComboBox4.getSelectedItem().toString();
       
        switch(e)
        {
        case "AGUAS CALIENTES":
                 che = "AS";      
               break;
        case "BAJA CALIFORNIA":
            che = "BC";
            break;
        case "B. CALIFORNIA SUR":
            che = "BS";
            break;
        case "CAMPECHE":
            che = "CC";
            break;
        case "COAHUILA":
            che = "CL";
            break;
        case "COLIMA":
            che = "CM";
            break;
        case "CHIAPAS":
            che = "CS";
            break;
        case "CHIHUAHUA":
            che = "CH";
            break;
        case "DISTRITO FEDERAL":
            che = "DF";
            break;
        case "DURANGO":
            che = "DG";
            break;
        case "GUANAJUATO":
            che= "GT";
            break;
        case "GUERRERO":
            che = "GR";
            break;
        case "HIDALGO":
            che = "HG";
            break;
        case "JALISCO":
            che = "JC";
            break;
        case "ESTADO DE MEX":
            che="MC";
            break;
        case "MICHOACAN":
            che="MN";
            break;
        case "MORELOS":
            che="MS";
            break;
        case "NAYARIT":
            che="NT";
            break;
        case "NUEVO LEON":
            che="NL";
            break;
        case "OAXACA":
            che="OC";
            break;
        case "PUEBLA":
            che="PL";
            break;
        case "QUERERTARO":
            che="QT";
            break;
        case "QUINTANA ROO":
            che="QR";
            break;
        case "SAN LUIS POTOSI":
            che="SP";
            break;
        case "SINALOA":
            che = "SL";
            break;
        case "SONORA":
            che = "SR";
            break;
        case "TABASCO":
            che = "TC";
            break;
        case "TAMAULIPAS":
            che = "TS";
            break;
        case "TLAXCALA":
            che ="TL";
            break;
        case "VERACRUZ":
            che="VZ";
            break;
        case "YUCATAN":
            che="YN";
            break;
        case "ZACATECAS":
            che="ZS";
            break;
           
        case "NACIDO EXTRANJERO":
            che="NE";
            break;
       
           
        }
       
           String xd = jTextField1.getText();  // tomamos lo que se escribió en el nombre.
           String mostrar = xd.replaceAll("[A,E,I,O,U]", "");  //remplaza las vocales con campo nulo
           String xd1 = jTextField2.getText();
           String mostrar2 = xd1.replaceAll("[A,E,I,O,U]", "");
           String xd2 = jTextField3.getText();
           String mostrar3 = xd2.replaceAll("[A,E,I,O,U]", "");
 this.jTextField4.setText(pat.substring(0,2)+mat.substring(0,1)+nom.substring(0,1)+a.substring(2,4)+b.substring(0,2)+c.substring(0,2)+d.substring(0,1)+che+mostrar.substring(1,2)+mostrar2.substring(1,2)+mostrar3.substring(1,2)+"0"+a.substring(2,3));  
   
    }

Ahora execute y veremos el show. recuerda que hay que llenar los campos con MAYUSCULAS PARA EVITAR ERRORES. si quieres abarcar minúsculas pues en el replaceAll("[A,E,I,O,U]",""); agregarle más letras a,e,i,o,u en minúsculas.

ya hora si vualá!!!!


5 comentarios: