批量解析多个 XML 文件

Parse several XML-files with batch

我想解析特定文件夹中的 several/all 个文件。

我通常这样解析我的文件:

java -jar saxon9he.jar -o:index.html -s:File.xml -xsl:Stylesheet.xslt
pause

有没有一种方法可以同时解析多个文件?

我试过类似的方法,但行不通

java -jar saxon9he.jar -o:index.html -s:Folder/*.xml -xsl:Stylesheet.xslt
pause

您不能使用通配符来标识文件。如果要解析多个文件,必须将它们全部放在一个目录中,然后使用 -s:path_to_directory 选项和 -o:path_to_output_file选项。

执行此操作,您将解析所选目录中的所有文件。

另一种(更灵活的)方法是从样式表中控制处理,如下所示:

<xsl:apply-templates select="collection('folder/?select=*.xml;recurse=yes')" mode="one-doc"/>

<xsl:template match="/" mode="one-doc">
  <xsl:result-document href="out/{....}.xml">
    ....
  </xsl:result-document>
</xsl:template>