2011-09-07 11 views
8

Tengo un archivo XML con su conjunto de codificación dentro de él: <?xml version="1.0" encoding="ISO-8859-15"?> pero realmente el archivo está codificado en UTF-8. ¿Hay alguna manera de anular la codificación declarada en un archivo XML al desasignarlo con JAXB?Reemplazar la codificación declarada durante la desasignación con JAXB

+0

Sé que esto es una especie de tarde, pero no creo que sea técnicamente legal. Y DEFINITIVAMENTE no es una buena idea. – fool4jesus

Respuesta

18

Puede deserializar el contenido de un java.io.Reader con el fin de suministrar la codificación real:

Unmarshaller unmarshaller = jc.createUnmarshaller(); 
InputStream inputStream = new FileInputStream("input.xml"); 
Reader reader = new InputStreamReader(inputStream, "UTF-8"); 
try { 
    Address address = (Address) unmarshaller.unmarshal(reader); 
} finally { 
    reader.close(); 
} 

Para más información

Cuestiones relacionadas