首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用msxsl:format- date ()转换日期

如何使用msxsl:format- date ()转换日期
EN

Stack Overflow用户
提问于 2013-04-16 23:14:11
回答 1查看 1.1K关注 0票数 1

每次我尝试使用msxsl:format-date(@testDate, 'MM-dd-yyyy')转换日期时,都会得到一个空字符串...

然而,如果我只是调用<xsl:value-of select="AcessDate"/>,那么我确实得到了一个约会...我遗漏了什么?不是说我没有通过X-PATH导航到正确的元素吗?

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
<xsl:for-each select="//SelectFairWarningInformationResult">
  <!--<xsl:variable name="AccessDate" select="AcessDate"/>-->
  <xsl:value-of select="msxsl:format-date(@test, 'MM-dd-yyyy')"/> | <xsl:value-of select="Acess"/> | <xsl:value-of select="PatName"/> | <xsl:value-of select="PatFName"/> | <xsl:value-of select="PatID"/> | <xsl:value-of select="UID"/> | <xsl:value-of select="ULName"/> | <xsl:value-of select="UFName"/>  | View Record&#10;
</xsl:for-each>
EN

回答 1

Stack Overflow用户

发布于 2013-04-16 23:43:35

如果使用像Saxon9、AltovaXML或XmlPrime这样的XSLT2.0处理程序,那么可以而且应该使用XSLT2.0定义的format-date function来格式化日期值。

您还没有向我们展示代码中的前缀msxsl绑定到哪个URI,但我假设您正在尝试使用Microsoft XSLT1.0处理程序MSXML6支持的专有扩展函数。我不期望其他XSLT供应商支持该功能,特别是XSLT2.0处理程序,因为XSLT2.0标准支持模式xs:datexs:dateTime数据类型,并具有相应的格式化函数。

使用XSLT2.0,我认为可以使用format-date(@test, "[M01]-[D01]-[Y0001]")。以此为例,您可能需要调优,恐怕我不知道msxsl:format-date做什么的细节。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16040715

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档