xslt 1.0 yyyy-MM-ddHH:mm:ss到YYYY-MM-DDTHH:mm:ss.sssZ

时间:2014-08-04 05:00:35

标签: objective-c date xslt nstimezone

我使用xslt 1.0并尝试将我的日期从yyyy-MM-ddHH:mm:ss转换为YYYY-MM-DDTHH:mm:ss.sssZ

输入样本 <StartDate>2014-07-2217:18:15</StartDate>

NZST时区中必需的输出格式<startDate>2014-07-22T17:18:15.899+12:00</startDate>

我在http://wiki.apache.org/cocoon/Tips/JavaInXslt中尝试使用示例但没有成功,因为我收到的错误是&#34;函数&#39; sdf:new&#39;没有定义&#34;。还查看了用于处理日期和时间的EXSLT扩展,但EXSLT没有时区功能。

请告知我如何将日期从yyyy-MM-ddHH:mm:ss转换为YYYY-MM-DDTHH:mm:ss.sssZ,而不是使用concat&#34; +12:00&#34;到startDate值的末尾?

提前致谢!

1 个答案:

答案 0 :(得分:1)

  

如何将日期从yyyy-MM-ddHH:mm:ss转换为   YYYY-MM-DDTHH:mm:ss.sssZ,除了使用concat&#34; +12:00&#34;到了   startDate值的结束?

没有别的办法*。 XSLT 1.0没有日期概念;您的数据是无意义的文本字符串,需要进行操作。

-
(*)除非您通过使用用户定义的函数扩展处理器功能来创建自己的方式,否则就像您尝试过的那样。但这是一个不同的问题 - 恕我直言,使用字符串函数的解决方案是微不足道的,令人满意。