我有一段这样的代码。我发现myResults = writer.getBuffer().toString();
为某些用例返回了EMPTY STRING,但没有为其他用例返回。
我查看了服务器,但没有在xml文件中看到任何特殊字符。什么会
导致transformer.transform()
出错导致myResults = writer.getBuffer().toString();
返回空字符串?它不返回null
,只返回一个空字符串。
StringWriter writer = new StringWriter();
Result result = new StreamResult(writer);
try{
transformer.transform(new StreamSource(theInputStream), result);
}catch (Exception e) {
e.printStackTrace();
}
myResults = writer.getBuffer().toString();
非常感谢,
答案 0 :(得分:0)
我最近碰到了这个,但我不确定它的情况是否相同。
我正在开发Windows并部署到Linux机器上。一切都会在我的Windows机器上变换很好,但是在linux盒子里有哪些文件可以转换,文件会生成一个空文件。我终于找到答案是在Xslt变换的行结尾。将行结尾更改为Linux样式行结尾后,转换工作正常。
希望这有帮助。
答案 1 :(得分:0)
当我的输入XML无效时,我观察到了这种行为。不是其架构,但语法上不正确。它包含<!-- -- -->
。 --
在XML注释内无效。