FORUM.RYAN.COM.BR
Graduação em TI (ADS/SI/CS) => Programação em geral => Topic started by: Jefferson on April 19, 2019, 07:05:35 PM
-
[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 "";
}
}
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);