Main Content

matlab.io.xml.dom.FileWriter 类

命名空间: matlab.io.xml.dom

创建文本文件的写入器

自 R2021a 起

描述

使用 matlab.io.xml.dom.FileWriter 类的对象创建将文本流式传输到文件的写入器。将 matlab.io.xml.dom.FileWriter 写入器与 matlab.io.xml.dom.DOMWriter 写入器结合使用,以将串行化的 XML 输出与其他文本源的输出混合在一起。

您不能为已在另一个写入器中打开的文件创建写入器。使用 close 方法可释放写入器创建的文件。

matlab.io.xml.dom.FileWriter 类是一个 handle 类。

类属性

ConstructOnLoad
true
HandleCompatible
true

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

创建对象

描述

writer = matlab.io.xml.dom.FileWriter(filePath) 创建一个写入器,该写入器将文本流式传输到 filePath 指定的文件,并将 FileEncoding 属性设置为 'UTF-8'

示例

writer = matlab.io.xml.dom.FileWriter(filePath,encoding)FileEncoding 属性设置为 encoding 参量的值。

输入参量

全部展开

写入器将文本流式传输到的文件的路径和文件名,指定为字符向量或字符串标量。该文件必须为可写的。

如果文件存储在远程位置,则 filePath 必须包含用以下格式指定的文件的完整路径:

scheme_name://path_to_file/my_file.ext

根据远程位置,scheme_name 可以是下表中的值之一。

远程位置scheme_name
Amazon S3™s3
Azure® Blob 存储wasb, wasbs
HDFS™hdfs

有关详细信息,请参阅处理远程数据

示例:'s3://bucketname/path_to_file/data.xml'

属性

全部展开

文本输出的编码,指定为字符向量或字符串标量。要设置此属性值,请使用将编码作为输入参量的构造函数。

属性:

GetAccess
public
SetAccess
immutable
NonCopyable
true

方法

全部展开

示例

全部折叠

matlab.io.xml.dom.FileWriter 对象与 matlab.io.xml.dom.DOMWriter 对象结合使用,以将串行化的 XML 输出与其他文本源的输出混合在一起。此示例用标记 XML 开始和结束的文本包装 XML 输出。

创建一个 XML 文档。

import matlab.io.xml.dom.*
docNode = Document("root_element");
docRootNode = getDocumentElement(docNode);
setAttribute(docRootNode,"attribute","attribute_value");
for i=1:20
    thisElement = createElement(docNode,"child_node");
    appendChild(thisElement,createTextNode(docNode,sprintf("%i",i)));
    appendChild(docRootNode,thisElement);
end
appendChild(docNode,createComment(docNode,"this is a comment"));

创建一个 matlab.io.xml.dom.FileWriter 对象,并使用 write 方法将文本写入文件。

fileWriter = FileWriter('mixed.txt');
write(fileWriter,"Start of XML content:"+newline);

创建一个 matlab.io.xml.dom.DOMWriter 对象,并调用 write 方法将串行化的 XML 写入同一文件。

write(DOMWriter,docNode,fileWriter);

向该文件中写入更多文本。

write(fileWriter,newline+"End of XML content");

版本历史记录

在 R2021a 中推出