Gerador CPF

Bom Pessoal,

Gostaria de saber se alguém conhece um método simples, em java, para gerar cpfs.
Veja bem, não é validar um cpf, também não é uma máscara.

Os exemplos que encontrei são de validação, ou são em outras linguagens. Até poderia implementar um… mas agradeço caso alguém tenha algum por ae.
Quando a gente precisa, não encontra…
=p

Muito obrigado

ñ conheço, + se encontrar ou implementar um, posta ai!! se funfar posso até adicionar no meu proj. de Utilirarios(OpenSutils-Br4J)

Acredito que é só gerar os 9 dígitos aleatório e depois usando o mesmo metado que valida o CPF para determinar os 2 últimos dígitos

[quote=tutu_rp]

Acredito que é só gerar os 9 dígitos aleatório e depois usando o mesmo metado que valida o CPF para determinar os 2 últimos dígitos [/quote]
Exatamente. Quaisquer 9 dígitos e depois use o algoritmo de validação para gerar os 2 últimos dígitos (os verificadores). Acho que a única restrição para gerar um CPF válido assim é que os 9 primeiros dígitos não podem ser iguais.

Já vi há um tempo atrás um código desse em java. Não lembro onde mas digo uma coisa. Não é difícil programar isso. Você somente tem de saber quais são as regras que a numeração obedece e implementar.

Mais fácil do que pegar o código em outra linguagem e passar para java, você procura as regras descritas e implementa seguindo a “receita”

Pelo que lembro não tem muito segredo.

Opa Cafezin,

Veja se isso te ajuda, acabei procurando algo na net e encontrei isso:

[code]private static String calcDigVerif(String num) {
Integer primDig, segDig;
int soma = 0, peso = 10;
for (int i = 0; i < num.length(); i++)
soma += Integer.parseInt(num.substring(i, i + 1)) * peso–;

    if (soma % 11 == 0 | soma % 11 == 1)  
        primDig = new Integer(0);  
    else  
        primDig = new Integer(11 - (soma % 11));  

    soma = 0;  
    peso = 11;  
    for (int i = 0; i < num.length(); i++)  
            soma += Integer.parseInt(num.substring(i, i + 1)) * peso--;  
      
    soma += primDig.intValue() * 2;  
    if (soma % 11 == 0 | soma % 11 == 1)  
        segDig = new Integer(0);  
    else  
        segDig = new Integer(11 - (soma % 11));  

    return primDig.toString() + segDig.toString();  
}  

public static String geraCPF() {  
    String iniciais = "";  
    Integer numero;  
    for (int i = 0; i < 9; i++) {  
        numero = new Integer((int) (Math.random() * 10));  
        iniciais += numero.toString();  
    }  
    return iniciais + calcDigVerif(iniciais);  
}  

public static boolean validaCPF(String cpf) {  
    if (cpf.length() != 11)  
        return false;  

    String numDig = cpf.substring(0, 9);  
    return calcDigVerif(numDig).equals(cpf.substring(9, 11));  
} 

public static void main (String args[]){
	System.out.println(geraCPF());
	System.out.println(validaCPF(geraCPF()));
}[/code]

olha esse exemplo acabei de fazer rapidinhu é legallll

saco só valeu !!!

qualquer coisa post ai a dúvida!!

neroBr

Perfeito!

Muito Obrigado!

Abraço!