2013-10-07T23:59:51.205-07:00
これをJavaの日付オブジェクトに変換したい文字列があります。解析エラーが発生しています。
date = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'").parse("2013-10-07T23:59:51.205-07:00");
試す
date = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ")
.parse("2013-10-07T23:59:51.205-0700");
Z はリテラルではなく、タイムゾーンにはコロンがありません
http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.htmlの例を参照してください。
java7 が使用されている場合は、Z
に置き換えることがX
でき、タイムゾーンにはコロンを含めることができます
Z
引用符で囲まないでください。Z
指定されたタイムゾーンではうまくいかないと思います。Java 7 より前は、コロンを間に挟んで ISO 8601 形式のタイムゾーンを解析する形式はなかったと思います。-0700
代わりに使用する必要があります。
ただし、Java 7 以降では、代わりに を使用してISO 8601 形式のタイムゾーンを解析するオプションがあります。については、javadoc を参照してください。次の形式を使用してください。X
Z
SimpleDateFormat
// This would work from Java 7 onwards
date = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSX")
.parse("2013-10-07T23:59:51.205-07:00");