アンドロイド用のJodaTimeライブラリで日付を解析し、誤ったタイムゾーンオフセットを取得しようとしています。JodaTimeの解析後にアンドロイドのタイムゾーンオフセットが正しくない
String dateString = "1990-05-03T20:00:00.000Z";
DateTimeFormatter inputFormatter = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss.SSSZ").withZone(DateTimeZone.UTC);
DateTimeFormatter outputFormatter = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss.SSSZ").withZone(DateTimeZone.getDefault());
DateTime dt = inputFormatter.parseDateTime(dateString);
String result = outputFormatter.print(dt);
私のデフォルトのタイムゾーンは、 "ヨーロッパは/モスクワ" である。しかし、結果は "1990-05-04T00:00:00.000 + 0400"、それが「あるべきとき1990-05-03T23:00:00.000 + 0300 " AndroidのバージョンはKitKatです。
どうしたのですか?
私は何も間違っていると思います。 1990年5月3日は夏時間(5月)であるため、Joda-Timeはヨーロッパ/モスクワの夏時間オフセット+04:00を使用します。実際には、モスクワの冬の間にあなたはちょうど混乱しているかもしれません。 –
@MenoHochschild 2014年以来、ロシアは冬の時間しか持たず、毎年時間を変更しません。 Joda-Timeで夏/冬の時間をどのように無効にできますか? – preceptron