0

我正在使用 Talend Open Studio 将信息从数据库获取到 XML 文件,然后在其上使用 XSLT。

2013-02-13T16:49:51.733+0230当我提供日期模式时,XML 中有一个日期字段为: "yyyy-MM-dd'T'HH:mm:ss.SSSZ"

我相信 SimpleDateFormat 具有无法处理冒号的限制。

我需要时区值之间的冒号:+02:30. 我怎样才能做到这一点?我可以使用不同的模式字符串吗?如果没有,我可以在我的 XSL 转换中进行吗?

4

1 回答 1

0

函数 format-dateTime() 查找在时区 HH:MM 之间需要冒号的 current-dateTime() 格式,在您的情况下它丢失(0230)。您应该使用另一种方法在它们之间放置冒号:

let $x:= "2013-02-13T16:49:51.733+0230"
return concat(substring-before($x,'+'),'+',substring(substring-after($x,'+'),1,2),':',substring(substring-after($x,'+'),3,2))

输出:

2013-02-13T16:49:51.733+02:30
于 2013-06-05T08:32:00.910 回答