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

15 python java xml xslt macos

我在OSX Snow Leopard(10.6.2)我可以安装任何我需要的东西.我最好喜欢Python或Java解决方案.我在Google上搜索并发现了很多关于编写我自己的程序的信息来做这件事,但这只是一个快速而又肮脏的实验,所以我不想花大量的时间来编写一堆代码来做到这一点,我相信其他人已经这样做了.

现在这是偏离主题的,不要将此问题作为您的推荐请求主题的示例,事实并非如此.我很抱歉,但是4年前我问过这一天,我的Google-Foo让我失望了!

nbe*_*yer 24

你试过' xsltproc '吗?它可能已经安装好了.

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

  • `xsltproc stylesheet file`输出到stdout.真棒. (3认同)

Wil*_*hen 17

我推荐Saxon,它可以从命令行运行,如下所示:

java -jar /path/to/saxon.jar xmlfile xslfile
Run Code Online (Sandbox Code Playgroud)

  • 添加-o参数以创建输出文件.`java -jar </path/to/saxon.jar> <xmlfile> <xslfile> -o:</ path/to/outputfile.fo>` (2认同)

Bri*_*new 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
Run Code Online (Sandbox Code Playgroud)

更多文档请参见此处