我目前正在使用标准的javax.xml.transform库使用XSL将XML转换为CSV.我的XSL文件很大-大约950行.我的XML文件也可能很大.
它在原型阶段运行良好,仅在大约50行左右就安装了XSL的一部分.现在,在“最终系统”中,当执行转换时,会出现错误分支目标偏移量过短的错误.
private String transformXML() {
String formattedOutput = "";
try {
TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer =
tFactory.newTransformer( new StreamSource( xslFilename ) );
StreamSource xmlSource = new StreamSource(new ByteArrayInputStream( xmlString.getBytes() ) );
ByteArrayOutputStream baos = new ByteArrayOutputStream();
transformer.transform( xmlSource, new StreamResult( baos ) );
formattedOutput = baos.toString();
} catch( Exception e ) {
e.printStackTrace();
}
return formattedOutput;
}
我遇到了一些关于此错误的帖子,但不太确定该怎么做.
我在做任何错误的代码明智吗?
是否有任何其他的第三方变压器可以做到这一点?
谢谢,
Andez