Joda Timeを使い始めたばかりで、今週は結果に満足しました。私は 'yyyy-MM-dd HH'の形式の2つの日付の間の時間範囲期間を取得しようとしています。Jodatimeのバグ2の日付範囲(1年にALMOST)の間の期間を計算する
私は私が書いていたテストケースに来て、結果が間違っている私には思えるまで:
2014年2月5日05 - 2016年2月4日05
ジョダ結果:
Years: 1 Months: 11 Days: 2 Hours: 0
期待される結果:
Years: 1 Months: 11 Days: 30 Hours: 0
私は、私はQAないですが、確かに、これは私にはバグがある
.... FULL 2年にそれを得るために1より多くの日必要があります...私はまたに話を聞きましたこれについての私たちのQAと彼女は同意した。
私はGithubでバグを起こしたいと思いますが、まずStackoverflowを使用するように指摘しました。どのような説明も非常に高く評価されます。
String hourFormat = "yyyy-MM-dd HH";
String startTime = "2014-02-05 05";
String endTime = "2016-02-04 05";
DateTimeFormatter hourFormatter = DateTimeFormat.forPattern(hourFormat);
DateTime start = hourFormatter.parseDateTime(startTime);
DateTime end = hourFormatter.parseDateTime(endTime );
Interval interval = new Interval(start, end);
Period period = interval.toPeriod();
System.out.println(String.format(
"Years: %d Months: %d Days: %d Hours: %d",
period.getYears(), period.getMonths(), period.getDays(), period.getHours()
));
私の問題を解決するために、完全なコードサンプル – Krease
を追加してください、私は11月の後に正確な日付を取得し、その日付と終了日付間の日数を計算する必要があります。 **のDateTime daysStartTime = endTime.plusHours(1); ** ** int型日= Days.daysBetween(daysStartTime、エンド).getDays(); ** – Rodel
は明確にする - 彼は、問題を示し、あなたのコードサンプルを不完全です。自己完結型のコンパイル可能な例にしてください。 – Krease