Fórum validação de cpf #402179
02/06/2011
0
char dig10, dig11;
int s, i, r, num;
if (cpf.equals("00000000000") || (cpf.length() != 11)) {
return (false);
}
try {
s = 0;
for (i = 0; i < 9; i++) {
num = (int) (cpf.charAt(i) - 48);
s = s + (num * (10 - i));
}
r = 11 - (s & 11);
if ((r == 10) || (r == 11)) {
dig10 = '0';
} else {
dig10 = (char) (r + 48);
}
s = 0;
for (i = 0; i < 10; i++) {
num = (int) (cpf.charAt(i));
s = s + (num * (11 - i));
}
r = 11 - (s & 11);
if ((r == 10) || (r == 11)) {
dig11 = '0';
} else {
dig11 = (char) (r + 48);
}
if ((dig10 == cpf.charAt(9)) && (dig11 == cpf.charAt(10))) {
return (true);
} else {
return (false);
} } catch (InputMismatchException erro) {
return (false);
}
} e na classe repositorio estou colocando esse public static void main(String[] args) {
Scanner ler = new Scanner(System.in);
String cpf;
System.out.printf("Informe um CPF:");
cpf = ler.next();
if (Funcoes.ValidarCPF(cpf) == true) {
System.out.printf("\n&s\n", Funcoes.ValidarCPF(cpf));
} else {
System.out.printf("\nErro: CPF invalido!!!\n");
}
} agora na classe principal a de cadastro cliente eu não to sabendo como para que ele possa validar o cpf estou colocando assim public CadastroCliente() {
initComponents();
Funcoes.centralizeFrame(this);
Funcoes.ValidarCPF(cpf.getText()); cpf.setText("075.068.057-07"); private void botaoInserirActionPerformed(java.awt.event.ActionEvent evt) {
try {
Cliente cliente = new Cliente();
cliente.setCpf(cpf.getText()); RepositorioCliente.obterInstancia().inserir(cliente); cpf.setText(""); private void botaoPesquisarActionPerformed(java.awt.event.ActionEvent evt) {
ArrayList<Cliente> lista = this.listaCliente;
for (int i = 0; i < lista.size(); i++) { cpf.setText(cpf.getText()); isso ai é a perte q sto fazendo pra cpf so q a função ñ esta funcionado se puder me ajudar
Lu
Curtir tópico
+ 0Posts
02/06/2011
Robson Teixeira
Cliente cliente = new Cliente();
cliente.setCpf(cpf.getText()); if(Funcoes.ValidarCPF(cpf)){ RepositorioCliente.obterInstancia().inserir(cliente); }else{ // dentro desse else crie uma logica para enviar uma mensagem de erro para o usuario indicando que o cpf está incorreto } qualquer coisa é so chamar att robson
Gostei + 0
02/06/2011
Davi Costa
Veja esse links (O primeiro link já resolve):
http://redefoks.googlecode.com/svn/tags/Entities3.1/test/model/validadores/CepValidador.java
http://www.igorescobar.com/blog/tag/regex/
http://www.guj.com.br/java/114510-como-verificar-se-o-cep-e-valido--atraves-dos-correios--resolvido
http://www.linhadecodigo.com.br/dica/1280/Express%C3%B5es-RegularesPHP.aspx
http://codigofonte.uol.com.br/codigo/js-dhtml/validacao/validar-cep-usando-expressao-regular
Agora se eseu sistema for web a melhor saída é validar no formulário via javaScript, o usuário não teria que esperar a requisição ir no servidor e voltar com a resposta. Não se esqueça performance performance performance.
Att Davi
Gostei + 0
02/06/2011
Lu
Gostei + 0
02/06/2011
Lu
Gostei + 0
02/06/2011
Davi Costa
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class CepValidador{
private final String reg = "[0-9]\\-[0-9]";
public boolean isValid(String cep) {
boolean result = true;
if (cep == null) {
result = true;
} else {
Pattern pattern = Pattern.compile(reg);
Matcher match = pattern.matcher(cep);
result = match.matches();
}
return result;
}
}
Att Davi
Gostei + 0
03/06/2011
Lu
agradeço
Gostei + 0
03/06/2011
Davi Costa
Att Davi
Gostei + 0
03/06/2011
Lu
char dig10, dig11;
int s, i, r, num;
if (CPF.equals("00000000000") || (CPF.length() != 11)) {
return (false);
}
try {
s = 0;
for (i = 0; i < 9; i++) {
num = (int) (CPF.charAt(i) - 48);
s = s + (num * (10 - i));
}
r = 11 - (s & 11);
if ((r == 10) || (r == 11)) {
dig10 = '0';
} else {
dig10 = (char) (r + 48);
}
s = 0;
for (i = 0; i < 10; i++) {
num = (int) (CPF.charAt(i));
s = s + (num * (11 - i));
}
r = 11 - (s & 11);
if ((r == 10) || (r == 11)) {
dig11 = '0';
} else {
dig11 = (char) (r + 48);
}
if ((dig10 == CPF.charAt(9)) && (dig11 == CPF.charAt(10))) {
return (true);
} else {
return (false);
}
} catch (InputMismatchException erro) {
return (false);
}
}
Gostei + 0
03/06/2011
Lu
public class Funcoes {
Gostei + 0
03/06/2011
Davi Costa
private void botaoInserirActionPerformed(java.awt.event.ActionEvent evt) {
try {
Cliente cliente = new Cliente();
cliente.setCpf(cpf.getText());
if(Funcoes.ValidarCPF(cliente.getCpf())){
RepositorioCliente.obterInstancia().inserir(cliente);
}else{
// dentro desse else crie uma logica para enviar uma mensagem de erro para o usuario indicando que o cpf está incorreto
}
Att Davi
Gostei + 0
03/06/2011
Lu
Gostei + 0
03/06/2011
Lu
Gostei + 0
03/06/2011
Lu
Gostei + 0
03/06/2011
Davi Costa
Que tal usar a solução do regex?
Att Davi
Gostei + 0
03/06/2011
Lu
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)