我想爲Java SimpleDaterFormat定義一個模式來解析現有的字符串。用SimpleDateFormat解析時區格式的正確模式
現有日期如下所示: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
THX。支持ISO 8601時區是用Java 7實現的,但是我的應用程序在Java 1.6下運行。 – cuh 2012-03-14 14:59:21
也許你可以在將它傳遞給格式化程序之前刪除冒號然後呢?我認爲這個正則表達式應該只對冒號有效:dateString.replaceFirst(「(\\ d \\ d):(\\ d \\ d)$」,「$ 1 $ 2」) – matts 2012-03-14 15:08:39
我無法修改字符串第一。我使用一個工具來導入一組數據,並且只能定義一個模式。 – cuh 2012-03-14 15:15:24