Graduação em TI (ADS/SI/CS) > Programação em geral

Formatar CPF e telefone em Java

(1/1)

Jefferson:

--- Código: ---[code-java]private String formatarNumero(String tipo, String numero) {
 
    numero=numero.replaceAll("\\D", ""); //Removo todos os caracteres não-numéricos
    String mascara="";
   
    if (tipo.equalsIgnoreCase("telefone")) {
//Neste ponto o telefone ou tem 11 digitos (celulares) ou 10 digitos (fixos)
mascara= "(##) #####-####"; //Celulares
if (numero.length()==10) mascara="(##) ####-####"; //Telefones fixos
    }
    if (tipo.equalsIgnoreCase("cpf")) {
mascara="###.###.###-##"; 
    }    
try {
javax.swing.text.MaskFormatter formatadorNumero = new javax.swing.text.MaskFormatter(mascara);
javax.swing.JFormattedTextField txtNumero = new javax.swing.JFormattedTextField(formatadorNumero);
txtNumero.setText(numero);
return txtNumero.getText();
} catch (java.text.ParseException e) {
e.printStackTrace();
return "";
}

 }
--- Fim de código ---

O método usa três máscaras diferentes:

"###.###.###-##" para CPF

"(##) #####-####" para celulares
"(##) ####-####" para telefones fixos

Você pode mudar a formatação modificando a máscara correspondente

Exemplos de como chamar o método:

   this.telefone=formatarNumero("telefone", numero);
   this.cpf=formatarNumero("cpf", numero);

Navegação

[0] Índice de mensagens

Responder

Ir para versão completa