modulexml
XML-Verarbeitungsmodul: Mit dem XML-Modul können Sie XML- und HTML-Dateien analysieren und verarbeiten
Um die XML-Datei zu analysieren, können Sie Code wie diesen verwenden:
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
Im obigen Code verwenden wirfsDie readFile-Methode des Moduls liest eine XML-Datei, analysiert dann die XML-Datei mit der Parse-Methode des XML-Moduls und gibt eine zurückXmlDocumentObjekt xmlDoc. Anschließend können wir über xmlDoc.documentElement auf das Stammelement des XML-Dokuments zugreifen.
Um HTML-Dateien zu analysieren, müssen Sie Ihren Code nur leicht ändern:
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
Hier verwenden wir auchfsDie readFile-Methode des Moduls liest eine HTML-Datei, aber wenn wir die Parse-Methode des XML-Moduls aufrufen, geben wir den zweiten Parameter als „text/html“ an, damit das XML-Modul die Datei gemäß den grammatikalischen Regeln von analysiert html.
Die analysierten XML-Dokumentobjekte sindXmlDocumentTypen, ihre Eigenschaften und Methoden können alle unter Bezugnahme auf das XML Object Model (DOM) manipuliert werden.
Objekt
Document
XML-Dokumentobjekt, sieheXmlDocumentObjekt
1XmlDocument xml.Document;
statische Funktion
parse
XML/HTML-Text analysieren und erstellenXmlDocumentObjekt, mehrsprachig wird nicht unterstützt
1
2static XmlDocument xml.parse(String source,
String type = "text/xml");
Aufrufparameter:
- source: String, gibt den XML-/HTML-Text an, der analysiert werden muss
- type: String, gibt den Texttyp an, der Standardwert ist text/xml, er kann auch als text/html angegeben werden
Rückgabeergebnisse:
- XmlDocument, gibt das erstellte zurückXmlDocumentObjekt
XML/HTML analysieren und erstellenXmlDocumentObjekt, das beim Parsen entsprechend der angegebenen Sprache konvertiert wird
1
2static XmlDocument xml.parse(Buffer source,
String type = "text/xml");
Aufrufparameter:
- source:BufferGeben Sie die XML/HTML-Binärdaten an, die analysiert werden müssen
- type: String, gibt den Texttyp an, der Standardwert ist text/xml, er kann auch als text/html angegeben werden
Rückgabeergebnisse:
- XmlDocument, gibt das erstellte zurückXmlDocumentObjekt
serialize
SerialisierungXmlNodeist eine Zeichenfolge
1static String xml.serialize(XmlNode node);
Aufrufparameter:
Rückgabeergebnisse:
- String, gibt die serialisierte Zeichenfolge zurück
Konstante
ELEMENT_NODE
XmlNodeDie Attributkonstante „nodeType“ gibt an, dass der Knoten vorhanden istXmlElementObjekt
1const xml.ELEMENT_NODE = 1;
ATTRIBUTE_NODE
XmlNodeDie Attributkonstante „nodeType“ gibt an, dass der Knoten vorhanden istXmlAttrObjekt
1const xml.ATTRIBUTE_NODE = 2;
TEXT_NODE
XmlNodeDie Attributkonstante „nodeType“ gibt an, dass der Knoten vorhanden istXmlTextObjekt
1const xml.TEXT_NODE = 3;
CDATA_SECTION_NODE
XmlNodeDie Attributkonstante „nodeType“ gibt an, dass der Knoten vorhanden istXmlCDATASectionObjekt
1const xml.CDATA_SECTION_NODE = 4;
PROCESSING_INSTRUCTION_NODE
XmlNodeDie Attributkonstante „nodeType“ gibt an, dass der Knoten vorhanden istXmlProcessingInstructionObjekt
1const xml.PROCESSING_INSTRUCTION_NODE = 7;
COMMENT_NODE
XmlNodeDie Attributkonstante „nodeType“ gibt an, dass der Knoten vorhanden istXmlCommentObjekt
1const xml.COMMENT_NODE = 8;
DOCUMENT_NODE
XmlNodeDie Attributkonstante „nodeType“ gibt an, dass der Knoten vorhanden istXmlDocumentObjekt
1const xml.DOCUMENT_NODE = 9;
DOCUMENT_TYPE_NODE
XmlNodeDie Attributkonstante „nodeType“ gibt an, dass der Knoten vorhanden istXmlDocumentTypeObjekt
1const xml.DOCUMENT_TYPE_NODE = 10;