2012-03-06 109 views
3

我有两个xmls.There是一个数量字段,可以包含值如54.2,54.23,54.234,54.234567。XSLT 1.0数量字段必须至少有2位小数

会有人请告诉我如何才能确保ATLEAST两位小数将出现在输出xml.Currently 54.2被转化为54,2,但我希望它是54.20

回答

8

你可以使用format-number()函数将数字转换为给定格式的字符串。 如果使用此“#.00 ##########”格式字符串,至少会出现两位小数。

如果您有可以包含像54.2,54.23,54.234,54.234567值的XML文件:

<?xml version="1.0" encoding="ISO-8859-1"?> 
<catalog> 
     <price>54.2</price> 
     <price>54.23</price> 
     <price>54.234</price> 
     <price>54.234567</price> 
</catalog> 

您可以将数字转换具有像这样的XSLT来获得至少两位小数

<?xml version="1.0" encoding="ISO-8859-1"?> 
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 

<xsl:template match="/"> 
    <html> 
    <body> 
     <xsl:for-each select="/catalog/price"> 
      <xsl:value-of select='format-number(., "#.00##########")'/><br /> 
     </xsl:for-each> 
    </body> 
    </html> 
</xsl:template> 
</xsl:stylesheet> 

然后输出:

54.20 
54.23 
54.234 
54.234567 
相关问题