Xml 将毫秒转换为日期无效
我有一个输入XML,其中有一个长数字的时间戳。我正在尝试将其转换为可读的日期格式。我在网上搜索,几乎找不到解决办法。但它们都不起作用。请引导我,我错过了什么 我想将这个长时间戳(毫秒)转换为 可读日期格式) 输入XML:Xml 将毫秒转换为日期无效,xml,xslt,xslt-1.0,xslt-2.0,Xml,Xslt,Xslt 1.0,Xslt 2.0,我有一个输入XML,其中有一个长数字的时间戳。我正在尝试将其转换为可读的日期格式。我在网上搜索,几乎找不到解决办法。但它们都不起作用。请引导我,我错过了什么 我想将这个长时间戳(毫秒)转换为 可读日期格式) 输入XML: <Order> <value>1467702989532</value> </Order> <?xml version="1.0"?> <xsl:stylesheet xmlns="http://www.w3
<Order>
<value>1467702989532</value>
</Order>
<?xml version="1.0"?>
<xsl:stylesheet xmlns="http://www.w3.org/TR/xhtml1/strict" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" version="2.0">
<xsl:output method ="xml" indent="yes"/>
<xsl:template match="/Order">
<NewOrder>
<dateValue>
<xsl:value-of select='xs:dateTime("1970-01-01T00:00:00") + value * xs:dayTimeDuration("PT0.001S")'/>
</dateValue>
</NewOrder>
</xsl:template>
</xsl:stylesheet>
<?xml version="1.0" encoding="UTF-8"?>
<NewOrder xmlns="http://www.w3.org/TR/xhtml1/strict" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<dateValue />
</NewOrder>
1467702989532
XSLT:
<Order>
<value>1467702989532</value>
</Order>
<?xml version="1.0"?>
<xsl:stylesheet xmlns="http://www.w3.org/TR/xhtml1/strict" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" version="2.0">
<xsl:output method ="xml" indent="yes"/>
<xsl:template match="/Order">
<NewOrder>
<dateValue>
<xsl:value-of select='xs:dateTime("1970-01-01T00:00:00") + value * xs:dayTimeDuration("PT0.001S")'/>
</dateValue>
</NewOrder>
</xsl:template>
</xsl:stylesheet>
<?xml version="1.0" encoding="UTF-8"?>
<NewOrder xmlns="http://www.w3.org/TR/xhtml1/strict" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<dateValue />
</NewOrder>
电流输出:
<Order>
<value>1467702989532</value>
</Order>
<?xml version="1.0"?>
<xsl:stylesheet xmlns="http://www.w3.org/TR/xhtml1/strict" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" version="2.0">
<xsl:output method ="xml" indent="yes"/>
<xsl:template match="/Order">
<NewOrder>
<dateValue>
<xsl:value-of select='xs:dateTime("1970-01-01T00:00:00") + value * xs:dayTimeDuration("PT0.001S")'/>
</dateValue>
</NewOrder>
</xsl:template>
</xsl:stylesheet>
<?xml version="1.0" encoding="UTF-8"?>
<NewOrder xmlns="http://www.w3.org/TR/xhtml1/strict" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<dateValue />
</NewOrder>
在Oxygen/XML 14(Saxon EE 9.4.0.6)下适用于我。我得到2016-07-05T07:16:29.532
您实际使用什么处理器来执行转换?即使样式表标记为2.0版,也需要一个与XSLT 2.0兼容的处理器来处理转换。XSLT 1.0: