在XSL上为输出文本添加垂直制表符作为分隔符

时间:2016-12-02 12:53:24

标签: java xml xslt

我正在尝试解析XML文件,以便通过XSL转换为文本。

我要求输出应该在列之间使用垂直制表符作为分隔符。

如何在XSL上将垂直制表符写为分隔符。

我尝试使用

xsl:value-of select="concat(NAME,VT,CLASS......

但我收到错误

  

在属性值&#34中找到无效的XML字符(Unicode:0xb);选择"和元素是" xsl:value-of"。

2 个答案:

答案 0 :(得分:1)

XSLT styesheet也必须是格式良好的XML文档。 XML 1.0文档中不允许使用垂直制表符,但XML 1.1中允许使用它。尝试通过包含:

将样式表声明为XML 1.1
<?xml version="1.1" encoding="UTF-8"?>

一开始,然后使用:

<xsl:value-of select="concat(NAME, '&#x0B;', CLASS)"/>

这可能不适用于所有XSLT处理器,但它适用于Xalan和Saxon。

答案 1 :(得分:-2)

这个怎么样:

<xsl:value-of select="NAME"/>&#x0B;<xsl:value-of select="CLASS"/>