Galera....não sei se esta certo mas estou fazendo da seguinte forma!!!
eu tento fazer que ele imprima na tela mas nada ele não aparece pq?
//onde carregaprivate void btnValidarActionPerformed(java.awt.event.ActionEvent evt) {
String cpf = txtValidaCpf2.getText();
if (!geradorcpf.validaCPF(cpf)) {
JOptionPane.showMessageDialog(null, "Cpf Gerado com Sucesso", "Aviso",
JOptionPane.INFORMATION_MESSAGE);
}
}
//aqui é o metodo que valida e gera o cpf
public class geradorcpf {
public geradorcpf() {
}
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));
}
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);
}
}