모듈xml
xml 처리 모듈, xml 모듈을 사용하여 xml 및 html 파일을 구문 분석하고 처리할 수 있습니다.
xml 파일을 구문 분석하려면 다음과 같은 코드를 사용할 수 있습니다.
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
위의 코드에서 우리는fs모듈의 readFile 메소드는 xml 파일을 읽은 다음 xml 모듈의 구문 분석 메소드를 사용하여 xml 파일을 구문 분석하고 반환합니다.XmlDocument개체 xmlDoc. 그런 다음 xmlDoc.documentElement를 통해 xml 문서의 루트 요소에 액세스할 수 있습니다.
HTML 파일을 구문 분석하려면 코드를 약간 수정하면 됩니다.
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
여기서 우리도 사용합니다fs모듈의 readFile 메소드는 html 파일을 읽지만 xml 모듈의 구문 분석 메소드를 호출할 때 두 번째 매개변수를 'text/html'로 지정하여 xml 모듈이 다음의 문법 규칙에 따라 파일을 구문 분석하도록 합니다. html.
구문 분석된 Xml 문서 객체는 다음과 같습니다.XmlDocument유형, 해당 속성 및 메소드는 모두 XML 객체 모델(DOM)을 참조하여 조작할 수 있습니다.
물체
Document
xml 문서 객체, 참조XmlDocument물체
1XmlDocument xml.Document;
정적 함수
parse
xml/html 텍스트를 구문 분석하고 생성XmlDocument개체, 다국어는 지원되지 않습니다.
1
2static XmlDocument xml.parse(String source,
String type = "text/xml");
호출 매개변수:
- source: 문자열, 구문 분석해야 하는 xml/html 텍스트를 지정합니다.
- type: 문자열, 텍스트 유형을 지정합니다. 기본값은 text/xml이며 text/html로 지정할 수도 있습니다.
결과 반환:
- XmlDocument, 생성된 것을 반환합니다.XmlDocument물체
xml/html을 구문 분석하고 생성XmlDocument구문 분석 중에 지정된 언어에 따라 변환될 개체입니다.
1
2static XmlDocument xml.parse(Buffer source,
String type = "text/xml");
호출 매개변수:
- source:Buffer, 구문 분석해야 하는 xml/html 바이너리 데이터를 지정합니다.
- type: 문자열, 텍스트 유형을 지정합니다. 기본값은 text/xml이며 text/html로 지정할 수도 있습니다.
결과 반환:
- XmlDocument, 생성된 것을 반환합니다.XmlDocument물체
serialize
직렬화XmlNode문자열입니다
1static String xml.serialize(XmlNode node);
호출 매개변수:
결과 반환:
- String, 직렬화된 문자열을 반환합니다.
끊임없는
ELEMENT_NODE
XmlNodenodeType 속성 상수는 노드가XmlElement물체
1const xml.ELEMENT_NODE = 1;
ATTRIBUTE_NODE
XmlNodenodeType 속성 상수는 노드가XmlAttr물체
1const xml.ATTRIBUTE_NODE = 2;
TEXT_NODE
XmlNodenodeType 속성 상수는 노드가XmlText물체
1const xml.TEXT_NODE = 3;
CDATA_SECTION_NODE
XmlNodenodeType 속성 상수는 노드가XmlCDATASection물체
1const xml.CDATA_SECTION_NODE = 4;
PROCESSING_INSTRUCTION_NODE
XmlNodenodeType 속성 상수는 노드가XmlProcessingInstruction물체
1const xml.PROCESSING_INSTRUCTION_NODE = 7;
COMMENT_NODE
XmlNodenodeType 속성 상수는 노드가XmlComment물체
1const xml.COMMENT_NODE = 8;
DOCUMENT_NODE
XmlNodenodeType 속성 상수는 노드가XmlDocument물체
1const xml.DOCUMENT_NODE = 9;
DOCUMENT_TYPE_NODE
XmlNodenodeType 속성 상수는 노드가XmlDocumentType물체
1const xml.DOCUMENT_TYPE_NODE = 10;