simpledateformat解析日期與'Z'文我試圖解析一個看起來像這樣的日期:2010-04-05T17:16:00Z這是http://www.ietf.org/rfc/rfc3339.txt的有效日期。“Z”字面意思“暗示UTC是指定時間內的首選參考點?!比绻覈L試使用SimpleDateFormat和此模式解析它:yyyy-MM-dd'T'HH:mm:ss它將被解析為2010年4月5日17:16:00美國東部時間2010年SimpleDateFormat無法使用以下模式解析字符串:yyyy-MM-dd'T'HH:mm:ssz
yyyy-MM-dd'T'HH:mm:ssZ我可以顯式設置TimeZone在SimpleDateFormat上使用以獲得預期的輸出,但我不認為這是必要的。有什么我想念的嗎?有替代日期解析器嗎?
3 回答

慕田峪7331174
TA貢獻1828條經驗 獲得超13個贊
在該模式中,包含'z'日期時間組件表示時區格式需要符合通用時區 “標準”,其示例是Pacific Standard Time; PST; GMT-08:00
。
“Z”表示時區符合RFC 822時區標準,例如-0800
。
我想你需要一個DatatypeConverter ......
@Testpublic void testTimezoneIsGreenwichMeanTime() throws ParseException { final Calendar calendar = javax.xml.bind.DatatypeConverter.parseDateTime("2010-04-05T17:16:00Z"); TestCase.assertEquals("gotten timezone", "GMT+00:00", calendar.getTimeZone().getID());}
添加回答
舉報
0/150
提交
取消