Trema em Java SAX Parser
-
13-09-2019 - |
Pergunta
Atualmente, estou tendo problemas com valores trema alemão em um documento XML que eu recebi.
Ele exibe / salva o valor como " ü " em vez de um " U ".
A codificação XML está definido para UTF-8 que deve ser capaz de exibir tremas.
Também eu não poderia encontrar qualquer opção para definir um local no parser SAX.
Existe alguma outra maneira que eu posso fazer os valores salvar corretamente?
btw: eu estou usando o eclipse como IDE.
Toda a ajuda é muito apreciada!
Agradecemos antecipadamente!
Solução
O XML é codificado em UTF-8, mas você está decodificando-a com ISO-8859-1.
Tente usar InputStream
e outros "binários" APIs orientada para XML. Evite usar um Reader
, ou tentando converter de byte[]
a um String
antes da análise XML. Você é muito mais provável que estragar a codificação de caracteres do que o analisador é.
Outras dicas
Configuração de codificação XML para UTF-8 na declaração XML é a única coisa, mas outra coisa é a codificação física do documento XML ou seja, você pode ter um arquivo XML que diz <?xml version="1.0" encoding="utf-8"?>
mas o arquivo em si ainda pode ser ANSI codificado (ou qualquer que seja).