问题
I have a date(string) value in an XML file in this format:
Tue Apr 17 03:12:47 IST 2012
I want to use XSL transformation to convert the string/date into this format:
4/17/2012 03:12:47 AM
How can I do that in my XSL transform?
回答1:
If you are using
XSLT 1.0 version, use EXSLT - date:format-date date extension
XSLT 2.0 version, use built-in: Formatting Dates and Times date extension
But my suggestion is to
Have a standard XSD datetime format on XML, on the code-behind (that is, on rendering time) you can format as you like.
Update:
Always XML to process through XSLT, dates should be in standard XSD format. Currently your input is not in standard format so that it throws error.
Example:
<xsl:variable name="dt" as="xs:dateTime" select="xs:dateTime('2012-10-21T22:10:15')"/>
<xsl:value-of select="format-dateTime($dt, '[Y0001]/[M01]/[D01]')"/>
OUTPUT:
2012/10/21
来源:https://stackoverflow.com/questions/16892344/convert-a-string-to-date-format-in-xslt