Modulo modulo base

moduloxml

modulo di elaborazione xml, è possibile utilizzare il modulo xml per analizzare ed elaborare file xml e html

Per analizzare il file xml puoi usare un codice come questo:

1 2 3 4 5 6 7
var 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

Nel codice sopra usiamofsIl metodo readFile del modulo legge un file xml, quindi utilizza il metodo parse del modulo xml per analizzare il file xml e restituisce unXmlDocumentOggetto xmlDoc. Quindi, possiamo accedere all'elemento root del documento xml tramite xmlDoc.documentElement.

Per analizzare i file html, devi solo modificare leggermente il codice:

1 2 3 4 5 6 7
var 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

Anche qui usiamofsIl metodo readFile del modulo legge un file html, ma quando chiamiamo il metodo parse del modulo xml, specifichiamo il secondo parametro come 'text/html', in modo che il modulo xml analizzi il file secondo le regole grammaticali di html.

Gli oggetti documento Xml analizzati sonoXmlDocumentI tipi, le loro proprietà e i metodi possono essere tutti manipolati con riferimento al modello di oggetti XML (DOM).

oggetto

Document

oggetto documento xml, vedereXmlDocumentoggetto

1
XmlDocument xml.Document;

funzione statica

parse

Analizza il testo xml/html e creaXmlDocumentOggetto, multilingue non supportato

1 2
static XmlDocument xml.parse(String source, String type = "text/xml");

Parametri di chiamata:

  • source: String, specifica il testo xml/html che deve essere analizzato
  • type: String, specifica il tipo di testo, il valore predefinito è text/xml, può anche essere specificato come text/html

Risultati restituiti:


Analizza xml/html e creaXmlDocumentOggetto, che verrà convertito in base alla lingua specificata durante l'analisi

1 2
static XmlDocument xml.parse(Buffer source, String type = "text/xml");

Parametri di chiamata:

  • source:Buffer, specificare i dati binari xml/html che devono essere analizzati
  • type: String, specifica il tipo di testo, il valore predefinito è text/xml, può anche essere specificato come text/html

Risultati restituiti:


serialize

SerializzazioneXmlNodeè una stringa

1
static String xml.serialize(XmlNode node);

Parametri di chiamata:

Risultati restituiti:

  • String, restituisce la stringa serializzata

costante

ELEMENT_NODE

XmlNodeLa costante dell'attributo nodeType indica che il nodo lo èXmlElementoggetto

1
const xml.ELEMENT_NODE = 1;

ATTRIBUTE_NODE

XmlNodeLa costante dell'attributo nodeType indica che il nodo lo èXmlAttroggetto

1
const xml.ATTRIBUTE_NODE = 2;

TEXT_NODE

XmlNodeLa costante dell'attributo nodeType indica che il nodo lo èXmlTextoggetto

1
const xml.TEXT_NODE = 3;

CDATA_SECTION_NODE

XmlNodeLa costante dell'attributo nodeType indica che il nodo lo èXmlCDATASectionoggetto

1
const xml.CDATA_SECTION_NODE = 4;

PROCESSING_INSTRUCTION_NODE

XmlNodeLa costante dell'attributo nodeType indica che il nodo lo èXmlProcessingInstructionoggetto

1
const xml.PROCESSING_INSTRUCTION_NODE = 7;

COMMENT_NODE

XmlNodeLa costante dell'attributo nodeType indica che il nodo lo èXmlCommentoggetto

1
const xml.COMMENT_NODE = 8;

DOCUMENT_NODE

XmlNodeLa costante dell'attributo nodeType indica che il nodo lo èXmlDocumentoggetto

1
const xml.DOCUMENT_NODE = 9;

DOCUMENT_TYPE_NODE

XmlNodeLa costante dell'attributo nodeType indica che il nodo lo èXmlDocumentTypeoggetto

1
const xml.DOCUMENT_TYPE_NODE = 10;