- groovy.xml.XmlParser
- Todas las interfaces y rasgos implementados:
- ContentHandler
public class XmlParser extends Object implements ContentHandler
Una clase auxiliar para analizar XML en un árbol de instancias de Nodo para una forma sencilla de procesar XML. Este analizador no conserva el XML InfoSet; si eso es lo que necesita, intente utilizar W3C DOM, dom4j, JDOM, XOM, etc. Este analizador ignora los comentarios y las instrucciones de procesamiento y convierte el XML en un nodo para cada elemento del XML con atributos y elementos secundarios. Nodos y cadenas. Este modelo simple es suficiente para los casos de uso más simples de procesamiento de XML.
Uso de ejemplo:
import groovy.xml.XmlParser def xml = '<root><one a1="uno!"/><two>Some text!</two></root>' def rootNode = new XmlParser().parseText(xml) assert rootNode.name() == 'root' assert rootNode.one[0][email protected]a1 == 'uno!' assert rootNode.two.text() == 'Some text!' rootNode.children().each { assert it.name() in ['one','two'] }
Resumen del constructor
Constructor y descripción |
---|
XmlParser Crea un espacio de nombres no validado y consciente XmlParser que no permite declaraciones DOCTYPE en documentos. |
XmlParser Crea un XmlParser que no permite declaraciones DOCTYPE en documentos. |
XmlParser Crea un XmlParser . |
XmlParser
|
XmlParser
|
Resumen de métodos
Tipo de parámetros | Tipo de retorno | Nombre y descripcion |
---|---|---|
protected void |
addTextToNode()
|
|
public void |
characters(char[] buffer, int start, int length)
|
|
protected Node |
createNode(Node parent, Object name, Map attributes) Crea un nuevo nodo con el padre, el nombre y los atributos proporcionados. |
|
public void |
endDocument()
|
|
public void |
endElement(String namespaceURI, String localName, String qName)
|
|
public void |
endPrefixMapping(String prefix)
|
|
public DTDHandler |
getDTDHandler()
|
|
public Locator |
getDocumentLocator()
|
|
protected Object |
getElementName(String namespaceURI, String localName, String qName) Devuelve un nombre dado el espacio de nombresURI, localName y qName. |
|
public EntityResolver |
getEntityResolver()
|
|
public ErrorHandler |
getErrorHandler()
|
|
public boolean |
getFeature(String uri)
|
|
public Object |
getProperty(String uri)
|
|
protected XMLReader |
getXMLReader()
|
|
public void |
ignorableWhitespace(char[] buffer, int start, int len)
|
|
public boolean |
isKeepIgnorableWhitespace() Devuelve la configuración actual de mantener espacios en blanco ignorables. |
|
public boolean |
isNamespaceAware() Determine si el manejo del espacio de nombres está habilitado. |
|
public boolean |
isTrimWhitespace() Devuelve la configuración actual de espacios en blanco de recorte. |
|
public Node |
parse(File file) Analiza el contenido del archivo dado como XML convirtiéndolo en un árbol de nodos. |
|
public Node |
parse(InputSource input) Analice el contenido de la fuente de entrada especificada en un árbol de nodos. |
|
public Node |
parse(InputStream input) Analice el contenido del flujo de entrada especificado en un árbol de nodos. |
|
public Node |
parse(Reader in) Analice el contenido del lector especificado en un árbol de nodos. |
|
public Node |
parse(String uri) Analice el contenido del URI especificado en un árbol de nodos. |
|
public Node |
parseText(String text) Un método auxiliar para analizar el texto dado como XML. |
|
public void |
processingInstruction(String target, String data)
|
|
public void |
setDTDHandler(DTDHandler dtdHandler)
|
|
public void |
setDocumentLocator(Locator locator)
|
|
public void |
setEntityResolver(EntityResolver entityResolver)
|
|
public void |
setErrorHandler(ErrorHandler errorHandler)
|
|
public void |
setFeature(String uri, boolean value)
|
|
public void |
setKeepIgnorableWhitespace(boolean keepIgnorableWhitespace) Establece el valor de configuración de mantener los espacios en blanco ignorables. |
|
public void |
setNamespaceAware(boolean namespaceAware) Habilite y / o deshabilite el manejo del espacio de nombres. |
|
public void |
setProperty(String uri, Object value)
|
|
public void |
setTrimWhitespace(boolean trimWhitespace) Establece el valor de ajuste del espacio en blanco de recorte. |
|
public void |
skippedEntity(String name)
|
|
public void |
startDocument()
|
|
public void |
startElement(String namespaceURI, String localName, String qName, Attributes list)
|
|
public void |
startPrefixMapping(String prefix, String namespaceURI)
|
Resumen de métodos heredados
Métodos heredados de la clase | Nombre |
---|---|
class Object |
wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll |
Detalle del constructor
público XmlParser()
Crea un espacio de nombres no validado y consciente XmlParser
que no permite declaraciones DOCTYPE en documentos.
- lanza:
- ParserConfigurationException si no se puede crear un analizador que satisfaga la configuración solicitada.
- lanza:
- SAXException para errores SAX.
público XmlParser(validación booleana, namespaceAware booleano)
Crea un XmlParser
que no permite declaraciones DOCTYPE en documentos.
- lanza:
- ParserConfigurationException si no se puede crear un analizador que satisfaga la configuración solicitada.
- lanza:
- SAXException para errores SAX.
- Parámetros:
-
validating
–true
si el analizador debe validar los documentos a medida que se analizan; falso de lo contrario. -
namespaceAware
–true
si el analizador debe proporcionar soporte para espacios de nombres XML;false
de lo contrario.
público XmlParser(validación booleana, namespaceAware booleano, allowDocTypeDeclaration booleano)
Crea un XmlParser
.
- lanza:
- ParserConfigurationException si no se puede crear un analizador que satisfaga la configuración solicitada.
- lanza:
- SAXException para errores SAX.
- Parámetros:
-
validating
–true
si el analizador debe validar los documentos a medida que se analizan; falso de lo contrario. -
namespaceAware
–true
si el analizador debe proporcionar soporte para espacios de nombres XML;false
de lo contrario. -
allowDocTypeDeclaration
–true
si el analizador debe proporcionar soporte para declaraciones DOCTYPE;false
de lo contrario.
público XmlParser(XMLReader lector)
público XmlParser(SAXParser analizador)
Detalle del método
vacío protegido addTextToNode()
vacío público caracteres(carbonizarse[] búfer, inicio int, longitud int)
nodo protegido createNode(Padre de nodo, Objeto nombre, Mapa atributos)
Crea un nuevo nodo con el padre, el nombre y los atributos proporcionados. La implementación predeterminada devuelve una instancia de groovy.util.Node
.
- Parámetros:
-
parent
– el nodo principal, o nulo si el nodo que se está creando es el nodo raíz -
name
– un objeto que representa el nombre del nodo (normalmente una instancia de QName) -
attributes
– un mapa de nombres de atributos a valores de atributos
- Devoluciones:
- una nueva instancia de nodo que representa el nodo actual
vacío público endDocument()
vacío público endElement(Cuerda espacio de nombresURI, Cuerda nombre local, Cuerda qName)
vacío público endPrefixMapping(Cuerda prefijo)
público DTDHandler getDTDHandler()
público Locador getDocumentLocator()
protegido Objeto getElementName(Cuerda espacio de nombresURI, Cuerda nombre local, Cuerda qName)
Devuelve un nombre dado el espacio de nombresURI, localName y qName.
- Parámetros:
-
namespaceURI
– el URI del espacio de nombres -
localName
– el nombre local -
qName
– el nombre calificado
- Devoluciones:
- la representación recién creada del nombre
público EntityResolver getEntityResolver()
público ErrorHandler getErrorHandler()
booleano público getFeature(Cuerda uri)
público Objeto getProperty(Cuerda uri)
protegido XMLReader getXMLReader()
vacío público ignorableWhitespace(carbonizarse[] buffer, int start, int len)
booleano público isKeepIgnorableWhitespace()
Devuelve la configuración actual de mantener espacios en blanco ignorables.
- Devoluciones:
- Es verdadero si se mantendrán los espacios en blanco ignorables (por defecto es falso)
booleano público isNamespaceAware()
Determine si el manejo del espacio de nombres está habilitado.
- Devoluciones:
- verdadero si el manejo del espacio de nombres está habilitado
booleano público isTrimWhitespace()
Devuelve la configuración actual de espacios en blanco de recorte.
- Devoluciones:
- verdadero si se recortarán los espacios en blanco
nodo público analizar gramaticalmente(Expediente expediente)
Analiza el contenido del archivo dado como XML convirtiéndolo en un árbol de nodos.
- lanza:
- SAXException Cualquier excepción SAX, posiblemente envolviendo otra excepción.
- lanza:
- IOException Una excepción de IO del analizador, posiblemente de un flujo de bytes o un flujo de caracteres proporcionado por la aplicación.
- Parámetros:
-
file
– el archivo que contiene el XML que se va a analizar
- Devoluciones:
- el nodo raíz del árbol de nodos analizado
nodo público analizar gramaticalmente(Fuente de entrada aporte)
Analice el contenido de la fuente de entrada especificada en un árbol de nodos.
- lanza:
- SAXException Cualquier excepción SAX, posiblemente envolviendo otra excepción.
- lanza:
- IOException Una excepción de IO del analizador, posiblemente de un flujo de bytes o un flujo de caracteres proporcionado por la aplicación.
- Parámetros:
-
input
– el InputSource para que el XML lo analice
- Devoluciones:
- el nodo raíz del árbol de nodos analizado
nodo público analizar gramaticalmente(Flujo de entrada aporte)
Analice el contenido del flujo de entrada especificado en un árbol de nodos.
Tenga en cuenta que el uso de este método no proporcionará al analizador ningún URI para encontrar DTD, etc.
- lanza:
- SAXException Cualquier excepción SAX, posiblemente envolviendo otra excepción.
- lanza:
- IOException Una excepción de IO del analizador, posiblemente de un flujo de bytes o un flujo de caracteres proporcionado por la aplicación.
- Parámetros:
-
input
– un InputStream que contiene el XML que se va a analizar
- Devoluciones:
- el nodo raíz del árbol de nodos analizado
nodo público analizar gramaticalmente(Lector en)
Analice el contenido del lector especificado en un árbol de nodos.
Tenga en cuenta que el uso de este método no proporcionará al analizador ningún URI para encontrar DTD, etc.
- lanza:
- SAXException Cualquier excepción SAX, posiblemente envolviendo otra excepción.
- lanza:
- IOException Una excepción de IO del analizador, posiblemente de un flujo de bytes o un flujo de caracteres proporcionado por la aplicación.
- Parámetros:
-
in
– un lector para leer el XML a analizar
- Devoluciones:
- el nodo raíz del árbol de nodos analizado
nodo público analizar gramaticalmente(Cuerda uri)
Analice el contenido del URI especificado en un árbol de nodos.
- lanza:
- SAXException Cualquier excepción SAX, posiblemente envolviendo otra excepción.
- lanza:
- IOException Una excepción de IO del analizador, posiblemente de un flujo de bytes o un flujo de caracteres proporcionado por la aplicación.
- Parámetros:
-
uri
– una cadena que contiene un uri que apunta al XML que se va a analizar
- Devoluciones:
- el nodo raíz del árbol de nodos analizado
nodo público parseText(Cuerda texto)
Un método auxiliar para analizar el texto dado como XML.
- lanza:
- SAXException Cualquier excepción SAX, posiblemente envolviendo otra excepción.
- lanza:
- IOException Una excepción de IO del analizador, posiblemente de un flujo de bytes o un flujo de caracteres proporcionado por la aplicación.
- Parámetros:
-
text
– el texto XML para analizar
- Devoluciones:
- el nodo raíz del árbol de nodos analizado
vacío público procesamientoInstrucción(Cuerda objetivo, Cuerda datos)
vacío público setDTDHandler(DTDHandler dtdHandler)
vacío público setDocumentLocator(Locador locador)
vacío público setEntityResolver(EntityResolver entityResolver)
vacío público setErrorHandler(ErrorHandler errorHandler)
vacío público setFeature(Cuerda uri, valor booleano)
vacío público setKeepIgnorableWhitespace(booleano keepIgnorableWhitespace)
Establece el valor de configuración de mantener los espacios en blanco ignorables.
- Parámetros:
-
keepIgnorableWhitespace
– el nuevo valor deseado
vacío público setNamespaceAware(espacio de nombres booleano)
Habilite y / o deshabilite el manejo del espacio de nombres.
- Parámetros:
-
namespaceAware
– el nuevo valor deseado
vacío público setProperty(Cuerda uri, Objeto valor)
vacío público setTrimWhitespace(espacio en blanco de recorte booleano)
Establece el valor de ajuste del espacio en blanco de recorte.
- Parámetros:
-
trimWhitespace
– el valor de ajuste deseado