móduloxml
módulo de procesamiento xml, puede utilizar el módulo xml para analizar y procesar archivos xml y html
Para analizar el archivo xml puedes usar un código como este:
1
2
3
4
5
6
7var xml = require('xml');
var fs = require('fs');
var xmlStr = fs.readFile('test.xml');
var xmlDoc = xml.parse(xmlStr);
console.log(xmlDoc.documentElement.nodeName); // output root node name
En el código anterior usamosfsEl método readFile del módulo lee un archivo xml, luego usa el método parse del módulo xml para analizar el archivo xml y devuelve unXmlDocumentObjeto xmlDoc. Luego, podemos acceder al elemento raíz del documento xml a través de xmlDoc.documentElement.
Para analizar archivos html, sólo necesita modificar ligeramente su código:
1
2
3
4
5
6
7var xml = require('xml');
var fs = require('fs');
var htmlStr = fs.readFile('test.html');
var xmlDoc = xml.parse(htmlStr, 'text/html');
console.log(xmlDoc.documentElement.nodeName); // output root node name
Aquí también usamosfsEl método readFile del módulo lee un archivo html, pero cuando llamamos al método parse del módulo xml, especificamos el segundo parámetro como 'text/html', de modo que el módulo xml analizará el archivo de acuerdo con las reglas gramaticales de HTML.
Los objetos del documento XML analizados sonXmlDocumentLos tipos, sus propiedades y métodos se pueden manipular con referencia al modelo de objetos XML (DOM).
objeto
Document
objeto de documento xml, consulteXmlDocumentobjeto
1XmlDocument xml.Document;
función estática
parse
Analizar texto xml/html y crearXmlDocumentObjeto, multilingüe no es compatible
1
2static XmlDocument xml.parse(String source,
String type = "text/xml");
Parámetros de llamada:
- source: Cadena, especifica el texto xml/html que debe analizarse
- type: Cadena, especifica el tipo de texto, el valor predeterminado es texto/xml, también se puede especificar como texto/html
Resultados de devolución:
- XmlDocument, devuelve lo creadoXmlDocumentobjeto
Analizar xml/html y crearXmlDocumentObjeto, que se convertirá según el idioma especificado durante el análisis.
1
2static XmlDocument xml.parse(Buffer source,
String type = "text/xml");
Parámetros de llamada:
- source:Buffer, especifique los datos binarios xml/html que deben analizarse
- type: Cadena, especifica el tipo de texto, el valor predeterminado es texto/xml, también se puede especificar como texto/html
Resultados de devolución:
- XmlDocument, devuelve lo creadoXmlDocumentobjeto
serialize
Publicación por entregasXmlNodees una cuerda
1static String xml.serialize(XmlNode node);
Parámetros de llamada:
Resultados de devolución:
- String, devuelve la cadena serializada
constante
ELEMENT_NODE
XmlNodeLa constante del atributo nodeType indica que el nodo estáXmlElementobjeto
1const xml.ELEMENT_NODE = 1;
ATTRIBUTE_NODE
XmlNodeLa constante del atributo nodeType indica que el nodo estáXmlAttrobjeto
1const xml.ATTRIBUTE_NODE = 2;
TEXT_NODE
XmlNodeLa constante del atributo nodeType indica que el nodo estáXmlTextobjeto
1const xml.TEXT_NODE = 3;
CDATA_SECTION_NODE
XmlNodeLa constante del atributo nodeType indica que el nodo estáXmlCDATASectionobjeto
1const xml.CDATA_SECTION_NODE = 4;
PROCESSING_INSTRUCTION_NODE
XmlNodeLa constante del atributo nodeType indica que el nodo estáXmlProcessingInstructionobjeto
1const xml.PROCESSING_INSTRUCTION_NODE = 7;
COMMENT_NODE
XmlNodeLa constante del atributo nodeType indica que el nodo estáXmlCommentobjeto
1const xml.COMMENT_NODE = 8;
DOCUMENT_NODE
XmlNodeLa constante del atributo nodeType indica que el nodo estáXmlDocumentobjeto
1const xml.DOCUMENT_NODE = 9;
DOCUMENT_TYPE_NODE
XmlNodeLa constante del atributo nodeType indica que el nodo estáXmlDocumentTypeobjeto
1const xml.DOCUMENT_TYPE_NODE = 10;