read que parse instalar how for example documentbuilderfactory descargar compile application java xml ant xml-parsing

que - read xml dom java example



Cómo evitar el encabezado xml mientras concatena los archivos xml en el script ant (2)

Hay una cadena de filtros. Así que puedes usar ''versión xml'' o ''codificación'' para filtrar.

<filterchain> <linecontains> <contains value="xml version"/> </linecontains> </filterchain>

Luego hay un encabezado que se puede agregar como común. Allí puede dar el encabezado común.

<header filtering="no" trimleading="yes"> ----Put Header--- </header>

Ref. Función: https://googleweblight.com/?lite_url=https://ant.apache.org/manual/Tasks/concat.html&ei=t1jfBWPU&lc=en-IN&s=1&m=717&host=www.google.co.in&ts= 1456774849 & sig = ALL1Aj6a3WOuua261FfWU1a1B-ULkTgOMw

Esta pregunta ya tiene una respuesta aquí:

Estoy concatenando todos los archivos xml en una carpeta en un único archivo xml en script de ant. Mientras concatena los archivos xml, el encabezado

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

en todos los archivos xml se anexan en la salida xmlfile.

¿Hay alguna forma de evitar este encabezado?

<concat destfile="${docbook.dir}/all-sections.xml" force="no"> <fileset dir="${docbook.dir}" includes="sections/*.xml"/> </concat>


Puede aplicar una expresión regular para descartar el encabezado:

<concat destfile="${docbook.dir}/all-sections.xml" force="no"> <fileset dir="${docbook.dir}" includes="sections/*.xml"/> <filterchain> <linecontainsregexp negate="true"> <regexp pattern="&lt;/?xml version"/> </linecontainsregexp> </filterchain> </concat>

https://ant.apache.org/manual/Types/filterchain.html

EDITAR: Si desea mantener la primera aparición del encabezado, esta es una opción:

<property name="first" value="true"/> <concat destfile="${docbook.dir}/all-sections.xml"> <fileset dir="${docbook.dir}" includes="sections/*.xml"/> <filterchain> <scriptfilter language="javascript"> <![CDATA[ first = project.getProperty("first"); if(self.getToken().indexOf("</?xml version") != -1) { if(first == "true") { project.setProperty("first", "false"); } else { self.setToken(null); } } ]]> </scriptfilter> </filterchain> </concat>