我想为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。
答案 0 :(得分:5)
如果您可以使用Java 7或更高版本,则可以使用XXX
模式使时区看起来像+02:00:
yyyy-MM-dd'T'HH:mm:ssXXX
否则,在解析之前,您可能必须操纵日期字符串以从时区中删除冒号。
答案 1 :(得分:1)
我知道这是一个有点老问题,但其他人可能会从我的提示中受益。
您可以使用0 2 0 0 0 0 0 0 0 0
0 2 0 0 0 0 0 0 0 0
0 2 0 0 0 0 0 0 0 0
0 2 0 0 0 0 0 0 0 0
0 2 0 0 0 0 0 0 0 0
0 2 0 0 0 0 0 0 0 0
0 2 0 0 0 0 0 0 0 0
0 2 0 0 0 0 0 0 0 0
0 2 0 0 0 0 0 0 0 0
0 2 0 0 0 0 0 0 0 0
。库documentation代表:
区域:'Z'输出不带冒号的偏移量,'ZZ'输出偏移量 冒号,'ZZZ'或更多输出区域ID。
您也可以将它与java 6一起使用。this question
中有更多示例