假设我想要编写具有以下格式的许多xmls的文本输出。 其中一些xml文件可能没有节点[name,age,school]的值。
<学生>
<名称>&Dilruk LT; /名称>
<年龄/>
<学校> ABC< /学校>
< /学生>
所有这些xml文件都位于一个目录中,我遍历它们以生成每个xml的输出文件。
所以基本上我正在使用一个xsl文件,我正在尝试通过考虑类似格式[具有不同节点值]的这些xml文件来生成输出。
但我只需要将相应的输出写入具有特定条件的xml文件。 [假设有一个名字,因为某些xml文件不包含名称值]。
因此,如果我要转换5个xml文件,并且只有3个文件具有非空名称值,我想只生成3个输出文件。
我更喜欢XSL方面的解决方案,我知道这种解决方案最不可能,但如果我们可以在不读取输出文件的内容并删除它们或根据java端的大小[0kB]删除它们的情况下执行此操作,那么它真的很有帮助太
提前致谢:)
答案 0 :(得分:0)
在XSLT 1.0中,如果没有特定于供应商的扩展,则无法在样式表级别生成多个输出。根据您使用的XSLT 1.0引擎,有一些扩展可以启用多个输出,我在下面列出了一些链接。作为替代方案,您可以考虑让您的客户端多次调用样式表,每个输入文件一次。
对于XSLT 2.0,我采取的方法是:
例如样式表(XSLT 2.0),请参阅:
对于XSLT 1.0,Microsoft案例,请参阅:
对于XSLT 1.0,XALAN案例,请参阅:
另见相关问题: