0

時間を含む特定の文字列の正しいパターンを見つけようとしています。

これが私の文字列と私が最近試したパターンです:

String time = "Sun Jul 01 2012 11:25:57 GMT+0200 (CEST)";
DateTimeFormatter formatter = DateTimeFormat.forPattern("EEE MMM dd yyyy HH:mm:ss 'GMT'ZZ '(CEST)'");
DateTime date = formatter.parseDateTime(time);

どの文字を使用するかについてのドキュメントを読みましたが、指定されたタイムストリングをどのように一致させるかはまだ完全にはわかりません。

あなたの一人がそれで私を助けることができれば素晴らしいでしょう!

これが私が得ている例外です:

Exception in thread "main" java.lang.IllegalArgumentException: Invalid format: "Sun Jul 01 2012 11:25:57 GMT+020..."
    at org.joda.time.format.DateTimeFormatter.parseDateTime(DateTimeFormatter.java:866)
    at Main.main(Main.java:10)
4

1 に答える 1

1

AFAIK jodatime は、あいまいであるため、タイム ゾーン名を解析できません。次のパターンで文字列を解析できます。

"EE MMM dd yyyy HH:mm:ss 'GMT'ZZ '(CEST)'"

タイム ゾーン オフセット (+0200) も含まれているため、タイム ゾーン名はスキップされます。

于 2012-08-16T10:13:26.287 に答える