通过XSLT以XML格式格式化日期
当我使用XML序列化程序序列化时DateTime
,它以以下格式编写:
<Date>2007-11-14T12:01:00</Date>
当通过XSLT样式表传递它以输出HTML时,如何格式化?在大多数情况下,我只需要日期,而当我需要时间时,我当然不希望其中包含“有趣的T”。
回答:
以下是几个您可以使用的1.0模板:
<xsl:template name="formatDate"> <xsl:param name="dateTime" />
<xsl:variable name="date" select="substring-before($dateTime, 'T')" />
<xsl:variable name="year" select="substring-before($date, '-')" />
<xsl:variable name="month" select="substring-before(substring-after($date, '-'), '-')" />
<xsl:variable name="day" select="substring-after(substring-after($date, '-'), '-')" />
<xsl:value-of select="concat($day, ' ', $month, ' ', $year)" />
</xsl:template>
<xsl:template name="formatTime">
<xsl:param name="dateTime" />
<xsl:value-of select="substring-after($dateTime, 'T')" />
</xsl:template>
致电给他们:-
<xsl:call-template name="formatDate"> <xsl:with-param name="dateTime" select="xpath" />
</xsl:call-template>
和
<xsl:call-template name="formatTime"> <xsl:with-param name="dateTime" select="xpath" />
</xsl:call-template>
其中xpath是具有标准日期时间格式的元素或属性的路径。
以上是 通过XSLT以XML格式格式化日期 的全部内容, 来源链接: utcz.com/qa/424019.html