2016-12-02 97 views
0

我想解析XML文件以通過XSL轉換爲文本。在XSL上添加垂直製表符作爲輸出文本的分隔符

我有要求輸出應具有垂直製表符作爲列之間的分隔符。

如何在XSL上將垂直製表符寫爲分隔符。

我嘗試使用

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

但我得到錯誤

無效的XML字符(Unicode:0XB)在屬性的值 「選擇」 和元素髮現的是「XSL:的價值」。

+0

您正在使用哪種XSLT處理器? –

回答

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和撒克遜人的工作。

-2

如何:

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

這有什麼不同? –

+0

它不在屬性 –

+0

這有什麼不同?你仍然會得到同樣的錯誤。比較:http://xsltransform.net/3NSSEva與:http://xsltransform.net/3NSSEva/1 –