我需要一个简单的命令行程序来使用XSL样式表转换XML

16 投票
8 回答
24320 浏览
提问于 2025-04-15 20:54

我现在使用的是OSX Snow Leopard(10.6.2),我可以安装任何我需要的东西。我比较希望能找到一个Python或者Java的解决方案。我在谷歌上搜索过,发现很多关于自己写程序来实现这个功能的信息,但这只是一个快速且简单的实验,所以我不想花太多时间去写一大堆代码来完成这个,我相信其他人已经做过类似的事情了。

这已经偏题了,请不要把这个问题当作你推荐请求的例子,它并不合适。我很抱歉,但在我四年前问这个问题的时候,我的谷歌搜索能力真是糟糕透了!

8 个回答

5

你听说过 XMLStarlet 吗?它是一个处理 XML 的命令行工具,能做很多和 XML 相关的查询和转换,特别是:

xml tr --help
XMLStarlet Toolkit: Transform XML document(s) using XSLT
Usage: xml tr [<options>] <xsl-file> {-p|-s <name>=<value>} [ <xml-file-or-uri> ... ]
where
   <xsl-file>      - main XSLT stylesheet for transformation
   <xml-file>      - input XML document file name (stdin is used if missing)
   <name>=<value>  - name and value of the parameter passed to XSLT processor
   -p              - parameter is XPATH expression ("'string'" to quote string)
   -s              - parameter is a string literal

更多的文档可以在 这里 找到。

17

我推荐使用 Saxon,这个工具可以通过命令行来运行,方法如下:

java -jar /path/to/saxon.jar xmlfile xslfile
24

你试过用 'xsltproc' 吗?它可能已经安装在你的电脑上了。

http://xmlsoft.org/XSLT/xsltproc2.html

撰写回答