Ask*_*kov 133
以下是使用java api进行变压器的示例,如@Raedwald所说:
import javax.xml.transform.*;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import java.io.File;
import java.io.IOException;
import java.net.URISyntaxException;
public class TestMain {
public static void main(String[] args) throws IOException, URISyntaxException, TransformerException {
TransformerFactory factory = TransformerFactory.newInstance();
Source xslt = new StreamSource(new File("transform.xslt"));
Transformer transformer = factory.newTransformer(xslt);
Source text = new StreamSource(new File("input.xml"));
transformer.transform(text, new StreamResult(new File("output.xml")));
}
}
Run Code Online (Sandbox Code Playgroud)
输入也可以来自字符串或DOMSource,输出可以是DOMSource 等.
Java标准库为XML解析提供了一个(XSLT)转换接口.请参阅API文档以获取类javax.xml.transform.Transformer和javax.xml.transform.TransformerFactory.
我是xslt的新手.任何人都可以指导我如何使用java进行xslt处理?
这取决于您使用的基于Java的XSLT处理器.每个XSLT处理器都有自己的API.
例如,Saxon 6.5.5(用于XSLT 1.0)和Saxon 9.1.07(用于XSLT 2.0)是用Java编写的.该文档位于http://www.saxonica.com/documentation/documentation.xml
几乎所有XSLT处理器都有一个命令行实用程序,它不需要编写程序来执行XSLT转换.
例如,这里是:如何从命令行启动Saxon 9.x转换.
以下是我总是从命令行使用Saxon的方法:
java -Xms2048M -Xmx10000M -jar
C:\xml\Parsers\Saxon\Ver.9.1.0.7\J\saxon9.jar
-t -repeat:1 -o %out% %xml% %xsl% %param[ name=\"value\"]%
Run Code Online (Sandbox Code Playgroud)
其中%out%是输出文件的名称,%xml%是xml文件,%xsl%是主xslt文件,%param[ name=\"value\"]%是外部参数的名称 - 值列表(我几乎总是将其留空).
| 归档时间: |
|
| 查看次数: |
89044 次 |
| 最近记录: |