2010-01-25 25 views
9
String root = "RdbTunnels"; 
DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance(); 
DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder(); 
Document document = documentBuilder.newDocument(); 
Element rootElement = document.createElement(root); 
document.appendChild(rootElement); 

OutputFormat format = new OutputFormat(document); 
format.setIndenting(true); 


XMLSerializer serializer = new XMLSerializer(System.out, format); 
serializer.serialize(document); 

da el resultado de la siguiente maneraquitar declaración XML del documento XML generado usando java

<?xml version="1.0" encoding="UTF-8"?> 
<RdbTunnels/> 

pero tengo que quitar la declaración XML desde la salida ¿cómo puedo hacer que

+3

¿Por qué necesita para eliminarlo? – Quentin

+0

Si necesita eliminar la declaración XML, no necesita XML. Necesitas el analizador de documentos patentado de modo algo-formateado de flash. Te sugiero que uses regex. –

+1

ahhh expertos en sillones, lo siento, pero no. Sigue siendo XML, incluso si el sistema no admite encabezados xml ... – edthethird

Respuesta

15

usted tiene visto OutputKeys según lo utilizado por Transformer? Específicamente OMIT_XML_DECLARATION.

Tenga en cuenta que eliminar el encabezado es válido en XML 1.0, pero se pierden datos de codificación de caracteres (entre otras cosas) que pueden ser muy importantes.

+0

Básicamente estoy rellenando datos de la base de datos en el archivo * .tbl que es para referencia de algunos usuarios, se usará como referencia, debe estar en xml formato y neet no ser un documento xml. – flash

+1

Los datos de codificación de caracteres no son importantes para 'UTF-8' ya que es un valor por defecto para un documento sin Declaración XML. – bobince

10

Añadir este

format.setOmitXMLDeclaration(true); 

Ejemplo

OutputFormat format = new OutputFormat(document); 
format.setIndenting(true); 
format.setOmitXMLDeclaration(true); 
2

Al utilizar el setOmitXMLDeclaration (true); método de la clase Format. No estoy seguro, pero creo que usa jDom lib.

Ejemplo (se mostrará el archivo XML sin la declaración XML del documento Documento)

XMLOutputter out= new XMLOutputter(Format.getCompactFormat().setOmitDeclaration(true)); 
out.output(document, System.out); 
Cuestiones relacionadas