2013-02-20 58 views
0

我正在使用XSLT将XML文件转换为CSV文件。我的XSLT表格正在将某个数字前面的-->拉下。这会导致我的CSV上显示-->。我如何阻止这种情况发生?我正尝试在下面的XML中获取金额。XSLT表获取错误信息

XSLT表

<xsl:text>"</xsl:text> 
<xsl:value-of select="$tran/BPR/BPR02"/> 
<xsl:text>",</xsl:text> 

XML

-<BPR> 
<!--Transaction Handling Code--> 
-<BPR01>I 
<!--Remittance Information Only--> 
</BPR01> 
<!--Monetary Amount--> 
<BPR02>22615.08</BPR02> 
<!--Credit/Debit Flag Code--> 
-<BPR03>C 
<!--Credit--> 

提前感谢!

回答

1

使用<xsl:output method="text"/>

这是您的片段代码可能看起来怎么样的转变:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
<xsl:output method="text"/> 
<xsl:strip-space elements="*"/> 

<xsl:template match="/"> 
    <xsl:text>"</xsl:text> 
    <xsl:value-of select="/BPR/BPR02"/> 
    <xsl:text>",</xsl:text> 
    </xsl:template> 
</xsl:stylesheet> 

当这种变换所提供的XML文档应用 - 修正为形成良好:

<BPR> 
    <!--Transaction Handling Code--> 
    <BPR01>I 
     <!--Remittance Information Only--> 
    </BPR01> 
    <!--Monetary Amount--> 
    <BPR02>22615.08</BPR02> 
    <!--Credit/Debit Flag Code--> 
    <BPR03>C</BPR03> 
    <!--Credit--> 
</BPR> 

结果不包含不需要的字符:

"22615.08",