Main Content

transformToString

类: matlab.io.xml.transform.Transformer
命名空间: matlab.io.xml.transform

转换 XML 文档并以字符串形式返回结果

自 R2021a 起

语法

result = transformToString(transformer,input,stylesheet)
result = transformToString(transformer,input)

说明

result = transformToString(transformer,input,stylesheet) 使用 transformer 应用 stylesheet 来转换 input,并以字符串标量形式返回结果。

result = transformToString(transformer,input) 要求输入文档包含用于指定样式表的处理指令。例如,XML 文档开头的以下标记指定位于当前文件夹中名为 catalog.xsl 的样式表。

<?xml version="1.0" encoding="UTF-8"?>
 <?xml-stylesheet type="text/xsl" href="catalog.xsl"?>

输入参数

全部展开

XML 文档转换器,指定为 matlab.io.xml.transform.Transformer 对象。

要转换的 XML,指定为以下值之一:

用于指定
字符向量、字符串标量或 matlab.io.xml.transform.SourceFile 对象XML 文件路径
matlab.io.xml.transform.SourceString 对象XML 字符串
matlab.io.xml.dom.Documentmatlab.io.xml.dom.SourceDocument 对象解析后的 XML 文档

用于转换的样式表,指定为以下值之一:

用于指定
字符向量、字符串标量或 matlab.io.xml.transform.StylesheetSourceFile 对象样式表文件路径
matlab.io.xml.transform.StylesheetSourceString 对象XSL 标记
matlab.io.xml.dom.Documentmatlab.io.xml.transform.StylesheetSourceDocument 对象解析后的文档
matlab.io.xml.transform.CompiledStylesheet 对象编译的样式表

输出参量

全部展开

转换结果,以字符串标量形式返回。

示例

全部展开

此示例将包含国家/地区及其首都城市信息的 XML 标记转换为 HTML 表,并以字符串标量形式返回生成的 HTML。

这些示例使用下列文件:

  • capitals.xml

<Countries>
    <Country><Name>Canada</Name><Capital>Ottawa</Capital></Country>
    <Country><Name>France</Name><Capital>Paris</Capital></Country>
    <Country><Name>Peru</Name><Capital>Lima</Capital></Country>
</Countries>
  • capitals.xsl

<?xml version="1.0"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
  <html>
  <body>
      <table>
      <tr>
        <th>Country</th>
        <th>Capital</th>
      </tr>
      <xsl:for-each select="Countries/Country">
        <tr>
          <td><xsl:value-of select="Name"/></td>
          <td><xsl:value-of select="Capital"/></td>
        </tr>
      </xsl:for-each>
    </table>
  </body>
  </html>
</xsl:template>

</xsl:stylesheet>

使用 transformToString 方法将 capitals.xml 中的 XML 转换为 HTML 字符串。指定样式表为 capitals.xsl

import matlab.io.xml.transform.*
result = transformToString(Transformer,"capitals.xml","capitals.xsl");

显示生成的 HTML 字符串。

result
result = 
    "<html>
     <body>
     <table>
     <tr>
     <th>Country</th><th>Capital</th>
     </tr>
     <tr>
     <td>Canada</td><td>Ottawa</td>
     </tr>
     <tr>
     <td>France</td><td>Paris</td>
     </tr>
     <tr>
     <td>Peru</td><td>Lima</td>
     </tr>
     </table>
     </body>
     </html>
     "

版本历史记录

在 R2021a 中推出