我有一个包含许多
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 举报,一经查实,本站将立刻删除。