matlab.io.xml.dom.Document 类
命名空间: matlab.io.xml.dom
描述
matlab.io.xml.dom.Document
类的一个对象,表示 XML 文档。要创建一个 XML 文档,您需要创建一个 Document
对象。如果使用 matlab.io.xml.dom.Parser
对象读取 XML 文件,解析器将创建一个 Document
对象。
matlab.io.xml.dom.Document
类是一个 handle
类。
创建对象
描述
doc = matlab.io.xml.dom.Document()
创建一个空文档。
doc = matlab.io.xml.dom.Document(
使用具有指定名称的根元素创建文档。docElemName
)
根元素是 TagName
属性设置为 docElemName
的 matlab.io.xml.dom.Element
对象。
doc = matlab.io.xml.dom.Document(
还指定文档类型。docElemName
,docTypeName
,publicId
,systemId
)
文档类型是一个 matlab.io.xml.dom.DocumentType
对象,其 Name
属性设置为 docTypeName
,其 PublicID
属性设置为 publicID
,其 SystemID
属性设置为 systemID
。
doc = matlab.io.xml.dom.Document(
创建具有特定根元素的文档,该根元素具有指定的命名空间统一资源标识符 (URI) 和限定名称。docElemNSURI
,docElemQName
)
doc = matlab.io.xml.dom.Document(
使用指定的根元素和文档类型创建文档,其中根元素位于指定的命名空间中。docElemNSURI
,docElemQName
,docTypeName
,publicId
,systemId
)
输入参量
docElemName
— 根元素名称
字符向量 | 字符串标量
根元素名,指定为字符向量或字符串标量。
docTypeName
— DTD 的名称
字符向量 | 字符串标量
文档类型定义 (DTD) 的名称,指定为字符向量或字符串标量。
publicId
— 文档类型公共标识符
字符向量 | 字符串标量
文档类型公共标识符,指定为字符向量或字符串标量。
systemId
— 文档类型系统标识符
字符向量 | 字符串标量
文档类型系统标识符,指定为字符向量或字符串标量。
docElemNSURI
— 根元素名称的命名空间 URI
字符向量 | 字符串标量
根元素名称的命名空间统一资源标识符 (URI),指定为字符向量或字符串标量。
docElemQName
— 限定的根元素名称
字符向量 | 字符串标量
限定根元素名称,指定为字符向量或字符串标量。
属性
Children
— 此文档的子节点
1×0 matlab.io.xml.dom.Node
对象 (默认) | matlab.io.xml.dom.Element
对象
此文档的子节点,指定为 matlab.io.xml.dom.Element
对象。
属性:
GetAccess | public |
SetAccess | immutable |
NonCopyable | true |
Transient | true |
InputEncoding
— 源 XML 的字符编码
''
(默认) | 字符向量
用于解析此文档的源 XML 文件的字符编码,指定为字符向量。
示例: 'utf-8'
属性:
GetAccess | public |
SetAccess | immutable |
Transient | true |
NonCopyable | true |
XMLEncoding
— 由 XML 声明定义的字符编码
''
(默认) | 字符向量
由用于解析此文档的源 XML 文件中的 XML 声明定义的字符编码,指定为字符向量。
示例: 'utf-8'
属性:
GetAccess | public |
SetAccess | immutable |
Transient | true |
NonCopyable | true |
XMLStandalone
— 此文档是否为独立文档
false
(默认) | true
此文档是否为独立文档,指定为 true
或 false
。如果此值为 true
,解析器将忽略 XML 中的文档类型定义 (DTD) 标记声明。如果此文档是从声明 XML 是独立文档的 XML 源创建的,解析器会将此属性设置为 true
。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
XMLVersion
— 此文档的 XML 版本
''
(默认) | 字符向量
此文档的 XML 版本,指定为字符向量。如果此文档是从声明 XML 版本的 XML 源创建的,则解析器会将此属性设置为指定的版本。
示例: '1.0'
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
DocumentURI
— 文档源文件的 URI
''
(默认) | 字符向量
文档源文件的统一资源标识符 (URI),指定为字符向量。如果此文档是从文件创建的,解析器会将此属性设置为指定文件位置的 URI。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
Configuration
— 文档配置
matlab.io.xml.dom.DocumentConfiguration
对象
文档配置,指定为 matlab.io.xml.dom.DocumentConfiguration
对象,该对象指定用于标准化此文档的选项。
属性:
GetAccess | public |
SetAccess | immutable |
NonCopyable | true |
Transient | true |
方法
公共方法
appendChild |
| ||||||||||||||
cloneNode |
| ||||||||||||||
createAttribute |
| ||||||||||||||
createAttributeNS |
| ||||||||||||||
createComment |
| ||||||||||||||
createDocumentFragment | frag = createDocumentFragment(thisDoc) 创建文档片段并以 matlab.io.xml.dom.DocumentFragment 对象形式返回它。 | ||||||||||||||
createElement |
以字符向量或字符串标量形式指定 | ||||||||||||||
createElementNS |
将 | ||||||||||||||
createNSResolver |
| ||||||||||||||
createProcessingInstruction |
| ||||||||||||||
createTextNode |
| ||||||||||||||
getAttributes |
此方法提供与基于 W3C XML DOM 标准的现有 MATLAB® 代码的兼容性。 | ||||||||||||||
getBaseURI |
| ||||||||||||||
getChildNodes |
| ||||||||||||||
getChildren |
| ||||||||||||||
getDoctype |
| ||||||||||||||
getDocumentElement |
根元素包含文档的内容。 | ||||||||||||||
getDocumentURI |
您可以使用 | ||||||||||||||
getDOMConfig |
| ||||||||||||||
getElementByID |
ID 属性是声明为 ID 属性的属性。名为 | ||||||||||||||
getElementsByTagName |
返回的 | ||||||||||||||
getElementsByTagNameNS |
返回的 | ||||||||||||||
getFirstChild | child = getFirstChild(thisNode) 返回此文档的第一个子级。 | ||||||||||||||
getInputEncoding |
| ||||||||||||||
getLastChild | child = getLastChild(thisDoc) 返回此文档的最后一个子级。 | ||||||||||||||
getLocalName |
| ||||||||||||||
getNamespaceURI |
此方法提供与基于 W3C XML DOM 标准的现有 MATLAB 代码的兼容性。 | ||||||||||||||
getNextSibling |
此方法提供与基于 W3C XML DOM 标准的现有 MATLAB 代码的兼容性。 | ||||||||||||||
getNodeName |
此方法提供与基于 W3C XML DOM 标准的现有 MATLAB 代码的兼容性。 | ||||||||||||||
getNodeType |
此方法提供与基于 W3C XML DOM 标准的现有 MATLAB 代码的兼容性。 对于新的 MATLAB 代码,请使用 import matlab.io.xml.dom.* d = Document('book'); if isa(d,'matlab.io.xml.dom.Document') fprintf('This is a document.\n'); end | ||||||||||||||
getNodeValue |
此方法提供与基于 W3C XML DOM 标准的现有 MATLAB 代码的兼容性。 | ||||||||||||||
getOwnerDocument |
| ||||||||||||||
getParentNode | parent = getParentNode(thisDoc) 返回一个 0×0 matlab.io.xml.dom.Node 对象,因为文档没有父节点。 | ||||||||||||||
getPrefix |
此方法提供与基于 W3C XML DOM 标准的现有 MATLAB 代码的兼容性。 | ||||||||||||||
getPreviousSibling |
此方法提供与基于 W3C XML DOM 标准的现有 MATLAB 代码的兼容性。 | ||||||||||||||
getTextContent | getTextContent(thisDoc) 返回空字符数组,因为文档没有文本。 | ||||||||||||||
getXmlEncoding |
字符编码可以由创建 | ||||||||||||||
getXMLStandalone | 如果此文档声明为独立文档,则 您可以通过在创建 | ||||||||||||||
getXMLVersion |
您可以通过在创建 | ||||||||||||||
hasAttributes |
此方法提供与基于 W3C XML DOM 标准的现有 MATLAB 代码的兼容性。 | ||||||||||||||
hasChildNodes | 如果此文档节点有子级,则 | ||||||||||||||
importNode | 将节点从另一个文档导入此文档中。请参阅 | ||||||||||||||
isDefaultNamespace | 如果 默认命名空间在声明时是不带前缀的。文档中名称不带前缀的子节点属于默认工作区。要为文档声明默认命名空间,可以使用 import matlab.io.xml.dom.* nsURI = "http://my.namespace.org/mybook"; d = Document(nsURI,'book'); if isDefaultNamespace(d,nsURI) fprintf(... '"%s" is the default namepace\n',nsURI); end | ||||||||||||||
isEqualNode | 如果 此方法测试文档的相等性,而不是文档节点是否为同一对象的句柄。要测试相同性,请使用 相同的节点也会相等,但相等的节点未必相同。 在测试文档的相等性之前请先对它们进行标准化,因为标准化会影响相等性。 | ||||||||||||||
isSameNode | 如果 | ||||||||||||||
lookupNamespaceURI |
此方法提供与基于 W3C XML DOM 标准的现有 MATLAB 代码的兼容性。 | ||||||||||||||
lookupPrefix |
此方法提供与基于 W3C XML DOM 标准的现有 MATLAB 代码的兼容性。 | ||||||||||||||
normalize |
| ||||||||||||||
normalizeDocument | normalizeDocument(thisDoc) 标准化此文档。标准化确保文档结构与保存和重新加载文档后的结构相同。例如,该方法会删除空的文本节点,合并相邻的文本节点,添加缺失的命名空间属性,添加或更改前缀,以及更新实体引用节点的替换树。此方法执行的归一化运算取决于文档所用 matlab.io.xml.dom.DocumentConfiguration 对象指定的选项。 | ||||||||||||||
removeChild |
| ||||||||||||||
replaceChild |
| ||||||||||||||
renameNode |
进行以下指定:
| ||||||||||||||
setDocumentURI |
| ||||||||||||||
setNodeValue |
| ||||||||||||||
setPrefix |
| ||||||||||||||
setTextContent |
| ||||||||||||||
setXMLStandalone |
| ||||||||||||||
xmlwrite |
|
示例
从 XML 文件创建文档
使用 XML 解析器从文件 days.xml
创建一个 Document
对象。
import matlab.io.xml.dom.* doc = parseFile(Parser,"days.xml");
创建一个文档
创建一个具有名为 weekdays
的根元素的文档。向根元素追加内容。
import matlab.io.xml.dom.* doc = Document("weekdays"); docRootNode = getDocumentElement(doc); weekdays = ["Mon" "Tue" "Wed" "Thu" "Fri"]; for i=1:5 dayElement = createElement(doc,"day"); appendChild(dayElement,createTextNode(doc,weekdays(i))); appendChild(docRootNode,dayElement); end xmlFileName = "weekdays.xml"; writer = matlab.io.xml.dom.DOMWriter; writeToFile(writer,doc,xmlFileName);
版本历史记录
在 R2021a 中推出
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)