Saltar al contenido

Eliminar el encabezado XML de un XML en Java

Solución:

Idealmente, puede realizar una llamada a la API para excluir el encabezado XML si lo desea. No parece que KXmlSerializer Sin embargo, admite esto (hojeando el código aquí). Si tuvieras un org.w3c.dom.Document (o en realidad cualquier otra implementación de javax.xml.transform.Source) podrías lograr lo que quieras de esta manera:

TransformerFactory tf = TransformerFactory.newInstance();
Transformer transformer = tf.newTransformer();
transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");
StringWriter writer = new StringWriter();
transformer.transform(new DOMSource(doc), new StreamResult(writer));

De lo contrario, si tiene que usar KXmlSerializer parece que tendrás que manipular la salida.

Si usa un serializador JAXP, obtiene acceso a todas las propiedades de salida definidas en XSLT, por ejemplo omit-xml-declaration="yes". Puede obtener esto en forma de un “transformador de identidad”, llamado uso transformerFactory.getTransformer() sin parámetros, a los que luego llamas setOutputProperty(). Otro ejemplo:

TransformerFactory tf = TransformerFactory.newInstance();
Transformer t = tf.newTransformer();
t.setOutputProperty("omit-xml-declaration", "yes"); 
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : / /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *