微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何用XSLT连接很多XML文件?

我有一个包含许多 XML文件文件夹,我想要一个简单的XSLT转换,它可以将所有这些文件合并为一个,并将所有数据放在一个名为< files> …< / files>的节点下.
我不在乎订单.

附:我没有索引文件,其中包含所有文件名称.我在谷歌搜索“XSLT连接XML文件”但结果总是谈到使用document()函数并从索引文件获取文件名称.
我希望使用collection()函数解决这个问题,如果可能的话,请.

解决方法

XSLT 2.0处理器通常允许使用集合函数(从目录/文件夹中提取文件),但该函数的参数依赖于处理器.使用Saxon 9你可以使用

<xsl:param name="folder-url" select="'file:///C:/dir/folder'"/>

<xsl:template name="main">
  <files>
   <xsl:copy-of select="collection(concat($folder-url,'?select=*.xml'))"/>
  </files>
</xsl:template>

有关详细信息,请参阅http://www.saxonica.com/documentation/index.html#!sourcedocs/collections,分别查看XSLT 2.0处理器的文档.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。