Acentos no java

7 respostas
Neto.Sabio

Pessas estou com uma duvida.

Na pagina JSP eu deixo um campo text para ser preenchido. Mas preciso tirar todos os acentos desse campo que declarei como String.

Alguem saberia me dizer como tirar acentos numa cadeia de String ?

obrigado

7 Respostas

joaosouza

Olá vc pode criar uma função JavaScript para validar o que está sendo digitado pelo usuário.

Por exemplo:

//Inibe o uso de qualquer caracter que não seja letras, sem qualquer acentuação	
function caractersOnly(evt) {
	var browser;
    browser = navigator.appName; 
    if(browser == "Microsoft Internet Explorer") {	
	
	    evt = (evt) ? evt : event;
	    var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode : ((evt.which) ? evt.which : 0));
	    if ((charCode > 32 && charCode < 65 ) || (charCode > 90 && charCode < 97) || (charCode > 122 && charCode < 127) || (charCode > 127)){		
		   	return false;
	 	}
	 	
	 } else {
	 
	 	evt = window.event ? evt.keyCode : evt.which;    
    	var charCode = evt;   	    
	    if ((charCode > 32 && charCode < 65 ) || (charCode > 90 && charCode < 97) || (charCode > 122 && charCode < 127) || (charCode > 127)){		
		   	return false;
	 	}	 
	 }	
}

E no seu campo text vc faz assim:

<input type="text" name="nome" maxlength="50" value="" size="50" onkeypress="return caractersOnly(event);" />

Espero ter ajudado. :slight_smile:

T

Postei isto aqui uma vez.

class RemoverAcentos {
    static String acentuado = "çÇáéíóúýÁÉÍÓÚÝàèìòùÀÈÌÒÙãõñäëïöüÿÄËÏÖÜÃÕÑâêîôûÂÊÎÔÛ";
    static String semAcento = "cCaeiouyAEIOUYaeiouAEIOUaonaeiouyAEIOUAONaeiouAEIOU";
    static char[] tabela;
    static {
        tabela = new char[256];
        for (int i = 0; i < tabela.length; ++i) {
	    tabela [i] = (char) i;
        }
        for (int i = 0; i < acentuado.length(); ++i) {
            tabela [acentuado.charAt(i)] = semAcento.charAt(i);
        }
    }
    public static String remover (final String s) {
        StringBuffer sb = new StringBuffer();
        for (int i = 0; i < s.length(); ++i) {
            char ch = s.charAt (i);
            if (ch < 256) { 
                sb.append (tabela [ch]);
            } else {
                sb.append (ch);
            }
        }
        return sb.toString();
    }
    public static void main(String[] args) {
        String s = "Gisele Bündchen da Conceição e Silva foi batizada assim em homenagem à sua conterrânea de Horizontina, RS.";
        s = RemoverAcentos.remover (s);
        System.out.println (s);
    }
}
E

Belo código, caiu como uma luva para mim. Abraço.

marcelosdias

Puxa, realmente esta classe também me foi muito útil

renzonuccitelli

É, sempre uso essa classe do thingol, muito boa mesmo…

maxdavis

Valeu pelo código! :slight_smile:

Batney

Muito util a classe parabéns.

Criado 21 de novembro de 2007
Ultima resposta 19 de out. de 2011
Respostas 7
Participantes 8