2010-01-12 79 views
0

我已在在XSLT以下指定零填充與格式日期時間

<?xml version="1.0" encoding="UTF-8"?> 
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/02/xpath-functions" xmlns:xdt="http://www.w3.org/2005/02/xpath-datatypes"> 
    <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> 
    <xsl:variable name="cDate"> 
     <xsl:value-of select="current-dateTime()"/> 
    </xsl:variable> 
    <xsl:variable name="fcDate"> 
     <xsl:value-of select="format-dateTime($cDate,'[Y0001][M01][D01]')"/> 
    </xsl:variable> 
    <xsl:template match="/PublisherBooking"> 
     <dt> 
      <xsl:attribute name="date"><xsl:value-of select="$fcDate"/></xsl:attribute> 
     </dt> 
    </xsl:template> 
</xsl:stylesheet> 

這使我的輸出(給定當前日期爲2010年1月12日):

<?xml version="1.0" encoding="UTF-8"?> 
<dt date="2010112"/> 

我的問題是,我需要的格式如下:

<?xml version="1.0" encoding="UTF-8"?> 
<dt date="20100112"/> 

讓我怎麼弄的月和日零填充?具體來說,格式圖片'[Y0001] [M01] [D01]'有什麼問題。

僅供參考我使用附帶的XMLSpy 2005

+0

格式圖片看起來非常有效。您是否嘗試過替代格式,如「[Y0001] - [M01] - [D01]」? – Filburt 2010-01-12 18:24:54

+0

Filburt,我是用分隔符試過的,但仍然缺少前導零 – stjohnroe 2010-01-13 10:05:50

回答

0

嗯,它看起來像在發動機的錯誤XSLT引擎附帶我的版本的XMLSpy(2005年和位長的牙齒)。對Saxon 9.2進行改造,結果是按照要求進行的。