Problemas com Unicode

3 respostas
D

Olá amigos,

Meu problema é o seguinte:
Se digito System.out.println(“é”);

A minha saida é: ú

Se digito System.out.printf("\u00e9");

A saida continua sendo:ú

E esse problema não acontece só com o é.
Qualquer caracter especial que eu use, o meu Unicode não corresponde.

Qual o meu erro ??

3 Respostas

eduveks

O correto é sempre usar o \uXXXX, nunca ter acentos no código.

Pois se você passar o código do windows para o linux e vice-versa vai haver problemas com os caracteres acentuados.

O mesmo para arquivos .properties, .xml, etc…

Se existe uma codificação especial para caracteres é por uma boa razão e convém sempre utilizar.

D

Amigo,

Obrigado por responder, mas o problema é que mesmo usando \u00E9 , o meu programa sai com ú, não com o é.
eduveks

Isto te dá o que?

System.out.println(Integer.toHexString((int)'é'));

Com certeza vc tem algum charset ou coisa do genero configurado, vc não deve estar com unicode.

Tem a certeza que não esta aplicando algum charset a string? Ou a virtual machine?

Criado 29 de setembro de 2009
Ultima resposta 6 de out. de 2009
Respostas 3
Participantes 2