[RESOLVIDO] Tratamento de acentos e ç em java

7 respostas
java
R

Olá Pessoal,

Estou com um método de envio de e-mail, usando setHtmlMsg para o corpo do e-mail.
Preciso fazer com que os ACENTOS e Ç apareçam direito no resultado.

Sugestões?

7 Respostas

H

No geral e só colocar UTF-8, mas sem mostrar um trecho de código e meio difícil de ajudar.

R

Opa Henrique,
Eu consegui usando o replaceAll do String!
De qualquer forma obrigado!

C

@rcosta01 Não sei qua a solução que você fez com replaceAll, o mais provável foi a remoção de diacríticos, veja que isso é um xunxo.

O correto é definir o charset em uso, como @Henrique_Luiz_Silva disse.

Para mais detalhes olhe aqui: http://claudioweiler.blogspot.com.br/2012/06/enviando-e-mail-com-java.html

R

Vcs tem razão.

Mas como faço essa definição? é configuração na JVM? ou código na aplicação?

C

No link que passei tem a forma de uso. Lá está como ISO-8859-1, mas você pode trocar por UTF-8 ou utilizar o charset do sistema.

R

Eu consegui fazer com

descricao = Normalizer.normalize(descricao, Normalizer.Form.NFD);
textoFinal = descricao.replaceAll("[^\p{ASCII}]", “”);

meu problema agora é que quando o java lê da planilha os caracteres especiais ficam com um losango preto com “?” ao invés da letra.

R

CONSEGUI!

De fato o problema todo estava no charset.

Eu fiz diferente do que estava no seu link CWeiler.

Eu configurei a codificação direto no projeto para ISO-8859-1

netBeans: Botão direito no projeto > Propriedades > codificação.

Obrigado a todos!

Criado 12 de setembro de 2016
Ultima resposta 13 de set. de 2016
Respostas 7
Participantes 3