Alguém tem codigo de validacao CNPJ/CPF?

Pessoal ,

Estou desenvolvendo um sistema comercial, preciso validar o CNPJ e o CPF do cliente e também a inscrição estadual, o site do sintegra oferece uma dll windows para validação da inscrição estadual, mas o servidor é linux, há alguma classe para validação de inscrição estadual? alguém tem classes para validação de CNPJ ou CPF? :wink:

Obrigado

Fábio

Oi Fabio,

No meio dos meu inúmeros links, alias preciso limpar um monte deles :smiley: encontrei certa vez um código para validar o CNPJ, nunca testei mas deve te dar uma base:

http://www.tocaia.brtdata.com.br/apostilas/[java-list]%20Validar%20CNPJ.htm

Já para o CPF eu tenho um código escrito em Javascript, mas é facilimo para mandar para o Java ok.

<html><head><title>Validar CPF</title>

<script language=javascript>

function validacpf(){

var i;

s = document.frmCli.txtCpf.value;

var c = s.substr(0,9);

var dv = s.substr(9,2);

var d1 = 0;

for (i = 0; i < 9; i++)

{

d1 += c.charAt(i)*(10-i);

}

if (d1 == 0){

alert(“CPF Invalido”)

return false;

}

d1 = 11 - (d1 % 11);

if (d1 > 9) d1 = 0;

if (dv.charAt(0) != d1)

{

alert(“CPF Invalido”)

return false;

}

d1 *= 2;

for (i = 0; i < 9; i++)

{

d1 += c.charAt(i)*(11-i);

}

d1 = 11 - (d1 % 11);

if (d1 > 9) d1 = 0;

if (dv.charAt(1) != d1)

{

alert(“CPF Invalido”)

return false;

}

return false;

}

</script>

</head><body>

<form name=“frmCli”>

<input type=“text” name=“txtCpf” size=“11” maxlength=“11” onblur=“return validacpf()”>CPF

</form></body></html>

eu estou aprendendo java e não consegui passar esse codigo para java…alguem pode me dar uma ajudinha?

Olá

Dá uma olhada nesse projeto https://brazilutils.dev.java.net/

Usa o Stella
http://stella.caelum.com.br/

Valida combinação numerica do CPF e CNPJ

public class CheckCNPJ {
public static boolean chkCNPJ(String chCNPJ){

    int VAR1=0, VAR2=0, VAR3=0, VAR4=0, VAR5=0;

    String sCNPJ=null;

    boolean ret=false;
    
   //retirar caracteres inválidos e deixar somente números
    sCNPJ=SoNumero(chCNPJ);

    if (sCNPJ.length()== 8){
        VAR1 = 0;
        VAR2 = 0;
        VAR4 = 0;
        for(VAR3 = 1;VAR3<8;VAR3++){
            VAR1 = Integer.parseInt(sCNPJ.substring(1,VAR3));
            VAR1=VAR1%2;
            if(VAR1!= 0)
                VAR1 = VAR1 * 2;
            if(VAR1 > 9)
                VAR2 = VAR2 + (VAR1 / 10) + (VAR1=VAR1%10);
            else
            VAR2 = VAR2 + VAR1;
        }
        VAR2=VAR2%10;
        if(VAR2!=0)
            VAR4=10-VAR2;
        else VAR4 = 0;
  
        if(VAR4==(Integer.parseInt(sCNPJ.substring(1,8))))
           return true;
        else
        return false;
        }else{
        if(sCNPJ.length()==14){
            VAR1=0;VAR3=0;
            VAR4=0;VAR5=0;VAR2=5;
            for(VAR3=0;VAR3<=11;VAR3++){
                VAR1 = VAR1 + ((Integer.parseInt(sCNPJ.substring(VAR3,VAR3+1)) * VAR2));
                VAR2 = (VAR2 > 2)? VAR2 - 1: 9;
            }
            VAR1 = VAR1%11;
            VAR4 = (VAR1 > 1)?11 - VAR1:0;
            VAR1 = 0;
            VAR3 = 0;
            VAR2 = 6;
            for(VAR3=0;VAR3<=12;VAR3++){
                VAR1 = VAR1 + ((Integer.parseInt(sCNPJ.substring(VAR3,VAR3+1)) * VAR2));
                VAR2 = (VAR2 > 2)?VAR2 - 1:9;
            }
            VAR1 = VAR1%11;
            VAR5 = (VAR1 > 1)?11 - VAR1:0;
            if((VAR4==Integer.parseInt(sCNPJ.substring(12,13)))&&(VAR5 == Integer.parseInt(sCNPJ.substring(13,14))))
                return true;
            else
                return false;

            }else{
                return false;
            }
        }

}
private static String SoNumero(String chktxt) {
String txt;

    txt=chktxt.replace("/","");
    txt=txt.replace("-","");
    txt=txt.replace(".","");
    return txt;

}
}

Poste o código entre as tags [ code ] e [/code]

Usando o brazilutils é bem fáçil…
Eu ia posta uma classe que eu tenho para validar mas o projeto não ta aqui.

O problema que não sei a onde o projeto está e tenho que mexer nele hoje a noite. =/