我想为Java SimpleDaterFormat定义一个模式来解析现有字符串。
现有日期如下所示:2011-05-02T13:40:00+02:00
。
我尝试了不同的模式,但我得到了ParseExceptions。问题似乎出在时区格式上。
用Java打印图案:
yyyy-MM-dd'T'HH:mm:ssZ
2012-03-14T15:40:44+0100
yyyy-MM-dd'T'HH:mm:ssz
2012-03-14T15:41:58MEZ
但是我怎样才能得到
- ???
2011-05-02T13:40:00+02:00
我使用的是Java 6,而不是Java 7。
如果您可以使用Java 7或更新版本,您可以使用XXX
模式使时区看起来像+02:00:
yyyy-MM-dd'T'HH:mm:ssXXX
否则,在解析日期字符串之前,您可能需要对其进行操作以从时区中删除冒号。
我知道这是一个有点老的问题,但其他人可能会从我的提示中受益。您可以使用JodaTime
。如图书馆文件所示:
区域:"Z"输出不带冒号的偏移量,"ZZ"输出带冒号、'ZZZ'或更多输出区域id。
您也可以将它与java6一起使用。这个问题中有更多的例子