我正在使用XSL将一个XML转换为另一个XML。我的问题是,在一个元素中,我必须以格式显示当前日期:YYYYMMDD。
我尝试使用这样的变量:
<xsl:variable name="dateNow" select="current-dateTime()"/>
<xsl:variable name="dateNow2" select="current-date()"/>
然后尝试格式化,但没有成功。
<FRUEHESTER_LIEFERTERMIN><xsl:value-of select="format-dateTime($dateNow, '[Y0001][M01][D01]')"/></FRUEHESTER_LIEFERTERMIN>
答案 0 :(得分:3)
到底发生了什么(“没有成功”是什么意思)。您使用的XSLT处理器是什么?
以下是您尝试执行的操作的最小测试用例(输入XML文档无关紧要)
<?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/xpath-functions" exclude-result-prefixes="xs fn">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:variable name="dateNow" select="current-dateTime()"/>
<xsl:variable name="dateNow2" select="current-date()"/>
<xsl:template match="/">
<FL><xsl:value-of select="format-dateTime($dateNow, '[Y0001][M01][D01]')"/></FL>
</xsl:template>
</xsl:stylesheet>
以及它产生的内容 - 如果你尝试这个测试用例,你会得到同样的结果吗?
<?xml version="1.0" encoding="UTF-8"?>
<FL>20120111</FL>