私はハワイのタイムゾーンに基づいて時間を計算しています。現在の日付が2017-01-01T10:52:07.656-10:00(1月1日)のテストシナリオがあります。 .minusDays(1)を使用して前の日付を取得しようとすると、2016-12-31T12:52:07.656-08:00(12月31日)の日付が取得されます。ジョーダ時間を使用して前日計算
フォーマットをしようとしている前日の日付です。MM/DD/YYYYです。私は12/366/2016代わりの2016年12月31日
として出力を得る私のコード:
DateTime dt4 = new DateTime("2017-01-01T10:52:07.656-10:00");
System.out.println("Given Date:"+ dt4);
DateTimeFormatter fmt = DateTimeFormat.forPattern("MM/DD/YYYY");
System.out.println("Given Date After Date format: "+fmt.print(dt4));
DateTime previousDay = dt4.minusDays(1);
System.out.println("Previous Day: "+ previousDay);
System.out.println("Previous Date After Date format: "+fmt.print(previousDay));
O/P:
指定された日付:2017-01-01T12: 52:07.656-08:00
与えられた日付の後の日付の形式:01/01/2017
前日:2016-12-31T12:52:07.656-08:00
前の日付後の日付の形式:12/366/2016
おそらく 'DD'ではなく' dd'または 'd'が必要です –