时区格式连接

时间:2013-07-26 12:39:33

标签: ibm-connections ibm-sbt

我将SBT SDK中的时间值作为此格式的字符串

"2013-07-17T14:44:25.177Z"

我使用此代码获取Java Date对象

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
Date date = dateFormat.parse("2013-07-17T14:44:25.177Z");

但字符串“.177Z”的最后一部分应该是时区值!?!?!

是否有人知道如何用Java解析时区或完整日期与时区?

THX 安德烈亚斯

2 个答案:

答案 0 :(得分:1)

  

但字符串“.177Z”的最后一部分应该是时区值!?!?!

不,我认为.177是毫秒部分,Z是UTC偏移0(它不是真正的时区,但这是另一回事。)

我怀疑你想要:

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSX");

(其中X是ISO-8601时区说明符,包括UTC的Z。)

请注意,X仅在Java 7中引入 - 如果您使用的是Java 6或更早版本,则可能需要做更多的工作。

答案 1 :(得分:0)

您可能想要使用

javax.xml.bind.DatatypeConverter.parseTime(字符串)

因为IBM Connections API返回的原子中找到的日期符合http://www.w3.org/TR/xmlschema-2/中的定义,可以通过所述方法将其解析为Java日历对象。这也是时区说明符的原因。