日付に 1 か月追加したいのですが、4 週間しか追加されません。
このようにしてみましたが、
2012-05-04 + DateTimeUtilities.ONEMONTH = 2012-05-31
私が得ている結果は 2012-05-31 です
1 か月分 (30 日または 31 日、または月がうるう年の場合は 29 日または 28 日) を追加したい。
日付に 1 か月追加したいのですが、4 週間しか追加されません。
このようにしてみましたが、
2012-05-04 + DateTimeUtilities.ONEMONTH = 2012-05-31
私が得ている結果は 2012-05-31 です
1 か月分 (30 日または 31 日、または月がうるう年の場合は 29 日または 28 日) を追加したい。
時間をCalendarオブジェクトに変換してから、月フィールドをインクリメントしてみてください。
Calendar cal = Calendar.getInstance();
cal.setTime(new Date(timeInMillis));
cal.set(Calendar.MONTH, cal.get(Calendar.MONTH)+1);
long newTimeInMillis = cal.getTime().getTime();
12月から1月までのオーバーフローをチェックして、年をインクリメントすることをお勧めします。
APIドキュメントでは、DateTimeUtilities.ONEMONTHが4週間であることが確認されているため、取得したものは期待どおりです。