Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

matlab.io.xml.dom.WriterConfiguration 类

包: matlab.io.xml.dom

XML DOM 写入器选项

说明

使用 matlab.io.xml.dom.WriterConfiguration 对象的属性为表示为 matlab.io.xml.dom.DOMWriter 对象的 XML DOM 写入器指定选项。创建 matlab.io.xml.dom.DOMWriter 对象时,会创建 WriterConfiguration 对象。使用 DOMWriter 对象的 Configuration 属性来访问 WriterConfiguration 对象。

matlab.io.xml.dom.WriterConfiguration 类是 handle 类。

类属性

HandleCompatible
true
ConstructOnLoad
true

有关类属性的信息,请参阅类属性

属性

全部展开

是否美化打印输出的 XML 标记,指定为 truefalse。如果值为 true,则写入器通过添加空白来格式化输出,以缩进的易读形式生成输出。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

是否在输出中包含 XML 声明,指定为 truefalse。如果值为 true,则写入器会在输出中包含 XML 声明。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

是否在输出中包含文档类型定义 (DTD),指定为 truefalse。如果值为 true,并且 DOM 文档包含文档类型声明 (DTD),则写入器在 XML 文件输出中包含 DTD。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

是否在输出中包含字节顺序标记 (BOM)。如果值为 true,则写入器会在 XML 文件输出流的开头包含 BOM。

仅当写入文件且输出编码为以下编码之一时,写入器才会包含 BOM:

  • UTF-8

  • UTF-16

  • UTF-16LE

  • UTF-16BE

  • UCS-4

  • UCS-4LE

  • UCS-4BE

对于 UTF-16 和 UCS-4 编码,主机的 endian 模式用于确定 BOM。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

是否在输出中丢弃默认内容,指定为 truefalse。如果值为 true,写入器将使用可用的信息(如 XML 架构、DTD 和 Attr 节点上的指定标志)来决定丢弃哪些属性和内容。如果值为 false,则写入器会保留所有属性和内容。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

是否拆分 CDATA 节,指定为 truefalse。如果值为 true,写入器会拆分包含 CDATA 节终止标记 ']]>' 或输出编码中不可表示字符的 CDATA 节。如果值为 false,则在 CDATA 节包含 CDATA 节终止标记 ']]>' 或不可表示的字符的情况下,写入器将引发错误。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

示例

全部折叠

将 XML 文档写入文件,并格式化 XML 输出,使其具有缩进且易读。

将 XML 文档创建为 matlab.io.xml.dom.Document 对象。

import matlab.io.xml.dom.*
docNode = Document("root_element");
docRootNode = getDocumentElement(docNode);
weekdays = ["Mon" "Tue" "Wed" "Thu" "Fri"];
weekdaysElement = createElement(docNode,"weekdays");
for i=1:5
    dayElement = createElement(docNode,"day");
    appendChild(dayElement,createTextNode(docNode,weekdays(i)));
    appendChild(weekdaysElement,dayElement);
end
appendChild(docRootNode,weekdaysElement);

创建一个写入器来串行化该 XML 文档。

xmlFileName = "weekdays.xml";
writer = matlab.io.xml.dom.DOMWriter;

指定美化打印格式。

writer.Configuration.FormatPrettyPrint = true;
writeToFile(writer,docNode,xmlFileName);

查看格式化文件。

type(xmlFileName);
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<root_element>

  <weekdays>
    <day>Mon</day>
    <day>Tue</day>
    <day>Wed</day>
    <day>Thu</day>
    <day>Fri</day>
  </weekdays>

</root_element>
在 R2021a 中推出