1
正在使用下面的标记来显示可以正常工作的时区,直到现在夏时制已经发生,并且由于我们的服务器在英国显示时间为01/04/2015 03:43:00 PM + 0100
,我们也希望时区显示,请咨询。在XSLT中正确显示时区
标签之前使用:
date:format-date(date:date-time(), 'dd/MM/yyyy hh:mm:ss a Z')
问候
阿文德
正在使用下面的标记来显示可以正常工作的时区,直到现在夏时制已经发生,并且由于我们的服务器在英国显示时间为01/04/2015 03:43:00 PM + 0100
,我们也希望时区显示,请咨询。在XSLT中正确显示时区
标签之前使用:
date:format-date(date:date-time(), 'dd/MM/yyyy hh:mm:ss a Z')
问候
阿文德
如果“适当”你的意思是你想让它显示为“BST”(英国夏令时),那么就没有实际在日期/时间值中有足够的信息来做到这一点 - 在格林威治子午线附近的许多不同时区发生+1时区偏移。
您正在使用EXSLT
库来格式化日期和时间。这是基于Java的SimpleDateFormat
类,所以你可以试试你的运气与时区指示器z
,而不是Z
。
或者,如果您有权访问XSLT 2.0,则可以使用format-dateTime()
函数。这遭受同样的问题(dateTime值只存储一个偏移量,它实际上并没有告诉你时区的名称)。但是您可以通过将format-dateTime()
的第5个参数设置为“欧洲/伦敦”来向处理器提供线索,在这种情况下,它可能可以解决这个问题。
对不起,但不清楚你的问题是什么。你说“我们会......喜欢显示时区”。字符串“+0100”是否不算作您的目的时区?从技术上讲,这是一个时间偏移(来自UTC),而不是“时区”(由民法定义的区域,指定与UTC的给定偏移量),并且它不区分英国夏令时和欧洲冬令时,但它服务于同样的目的,大多数人称之为时区。你想要什么,没有? – 2015-04-01 15:51:40