Para evitar problemas com encoding de caracteres especiais é bom utilizar em suas classes Java código unicode ao invés de letras acentuadas. Como sempre preciso buscar algo assim no google, separei abaixo os mais utilizados para facilitar:
á | \u00e1 |
à | \u00e0 |
â | \u00e2 |
ã | \u00e3 |
ä | \u00e4 |
Á | \u00c1 |
À | \u00c0 |
 | \u00c2 |
à | \u00c3 |
Ä | \u00c4 |
é | \u00e9 |
è | \u00e8 |
ê | \u00ea |
ê | \u00ea |
É | \u00c9 |
È | \u00c8 |
Ê | \u00ca |
Ë | \u00cb |
í | \u00ed |
ì | \u00ec |
î | \u00ee |
ï | \u00ef |
Í | \u00cd |
Ì | \u00cc |
Î | \u00ce |
Ï | \u00cf |
ó | \u00f3 |
ò | \u00f2 |
ô | \u00f4 |
õ | \u00f5 |
ö | \u00f6 |
Ó | \u00d3 |
Ò | \u00d2 |
Ô | \u00d4 |
Õ | \u00d5 |
Ö | \u00d6 |
ú | \u00fa |
ù | \u00f9 |
û | \u00fb |
ü | \u00fc |
Ú | \u00da |
Ù | \u00d9 |
Û | \u00db |
ç | \u00e7 |
Ç | \u00c7 |
ñ | \u00f1 |
Ñ | \u00d1 |
& | \u0026 |
' | \u0027 |
Para colocar o código Unicode em uma String basta substituir o caracter pelo código. Exemplo: String s = "Diret\u00f3rio Home";
O código do método que usei para gerar essa tabela está abaixo:
public static String geraCodigoUnicode(char letra) {
String hexa = Integer.toHexString( (int)letra );
String prefix;
if( hexa.length() == 1 ) {
prefix = "\\u000";
} else if( hexa.length() == 2 ) {
prefix = "\\u00";
} else if( hexa.length() == 3 ) {
prefix = "\\u0";
} else {
prefix = "\\u";
}
return prefix + hexa;
}
Fonte: Programando Sem cafeína
0 comentários:
Postar um comentário