transformToString

Класс: matlab.io.xml.transform.Transformer
Пакет: matlab.io.xml.transform

Преобразуйте XML-документ и возвратите результат как строку

Синтаксис

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

Описание

result = transformToString(transformer,input,stylesheet) использование transformer преобразовать input использование stylesheet и возвращает результат как строковый скаляр.

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.Document, matlab.io.xml.dom.SourceDocument объектПроанализированный XML-документ

Таблица стилей для преобразования в виде одного из этих значений:

ЗначениеИспользуйте, чтобы задать
вектор символов, строковый скаляр или matlab.io.xml.transform.StylesheetSourceFile объектПуть к файлу таблицы стилей
matlab.io.xml.transform.StylesheetSourceString объектРазметка XSL
matlab.io.xml.dom.Document, ormatlab.io.xml.transform.StylesheetSourceDocument объектПроанализированный документ
matlab.io.xml.transform.CompiledStylesheet объектТаблица стилей Compiled

Выходные аргументы

развернуть все

Результат преобразования, возвращенный как строковый скаляр.

Примеры

развернуть все

Этот пример преобразовывает разметку 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 метод, чтобы преобразовать XML в capitals.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