Appearance
informat.xml xml操作相关
概述
使用informat.xml
执行XML的读写操作
parse
读取XML内容并返回Document对象。如果xml的内容为null或者空字符串将会返回null,如果内容结构不是正确的xml格式,将会抛出异常
javascript
informat.xml.parse(xml)
参数 | 类型 | 描述 |
---|---|---|
xml | String | xml内容 |
返回值 类型为org.w3c.dom.Document
关于w3c Document 的API方法可参见 https://docs.oracle.com/javase/7/docs/api/org/w3c/dom/Document.html
以下是一个例子
js
let doc = informat.xml.parse("<root name='test'>text content</root>");
let name = doc.getDocumentElement().getAttribute("name");
console.log(name);//test
createDocument
创建一个新的Document对象
javascript
informat.xml.createDocument()
返回值 类型为org.w3c.dom.Document
关于w3c Document 的API方法可参见 https://docs.oracle.com/javase/7/docs/api/org/w3c/dom/Document.html
doc2xml
将Document对象转换为xml字符串
javascript
informat.xml.doc2xml(doc, config)
参数 | 类型 | 描述 |
---|---|---|
doc | Document | xml文档对象 |
config | Config | 输出配置 |
config对象的结果如下
{
doctypeSystem:String,//
doctypePublic:String
indent:Boolean,//默认为false,是否缩进xml
indentAmount:Integer,//缩进量长度,默认为0
standalone:Boolean,xml元素中standalone的值
version:String,xml元素中version的值
encoding:String,xml元素中encoding的值
omitXmlDeclaration:Boolean,//是否不输出xml头
}
返回值 类型为 String
以下是一个例子
js
let doc = informat.xml.createDocument();
let rootElement = doc.createElement("company");
doc.appendChild(rootElement);
doc.createElement("staff");
rootElement.appendChild(doc.createElement("staff"));
//
let config = {};
config.doctypeSystem = "doctype system";
config.doctypePublic = "doctype public";
config.indent = true;
config.indentAmount=2;
config.standalone = false;
config.version = "1.1";
config.encoding = "utf-8";
//
let xml = informat.xml.doc2xml(doc, config);
console.log(xml);
xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE company PUBLIC "doctype public" "doctype system">
<company>
<staff/>
</company>
如果config
设置如下
config.omitXmlDeclaration=true;
config.indent=true;
输出结果为
xml
<!DOCTYPE company PUBLIC "doctype public" "doctype system">
<company>
<staff/>
</company>