XSLT:转换 XML 文件树

发布于 2024-08-31 02:59:10 字数 260 浏览 7 评论 0原文

我有以下文件结构(嵌套文件夹中的 XML 文件“index.xml”):

index.xml
foo/index.xml
foo/sub/index.xml
foo/.../index.xml
bar/.../index.xml

现在我必须使用给定的 XSL 样式表转换每个 XML 文件。结果应该是相同的文件夹结构(覆盖即可)。你会采取什么方法来实现这一目标?

我的系统:OS X 10.6,Saxon XSLT 处理器

I have the following file structure (XML files 'index.xml' in nested folders):

index.xml
foo/index.xml
foo/sub/index.xml
foo/.../index.xml
bar/.../index.xml

Now I have to transform each of this XML files with a given XSL stylesheet. The result should be the same folder structure (overwriting would be OK). What would be your approach to achieve this?

My system: OS X 10.6, Saxon XSLT processor

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

谁许谁一生繁华 2024-09-07 02:59:10

使用 Bash
如何将 find 命令放入一个文件中并使该文件可执行:(

find . -iname "*.xml" -exec transformcommand {} \;

{} 将替换为找到的文件。)

使用 Ant 如果您想要更多平台独立的你可以为它编写一个简单的 Ant 任务。查看 Ant XSLT 任务,它可以与 < a href="http://ant-contrib.sourceforge.net/tasks/tasks/for.html" rel="nofollow noreferrer">-标签。

例子:

<xslt in="input.xml"
      out="output.txt"
      style="thexsltfile.xsl"
      force="true"
      classPath="lib/saxon9.jar"/>

Using Bash
How about putting the find command in a file and make the file executable:

find . -iname "*.xml" -exec transformcommand {} \;

(The {} will be replaced with the found file.)

Using Ant If you want something more platform independent you could write a simple Ant task for it. Have a look at the Ant XSLT Task, which could be combined with the <for>-tag.

Example:

<xslt in="input.xml"
      out="output.txt"
      style="thexsltfile.xsl"
      force="true"
      classPath="lib/saxon9.jar"/>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文