4

2 つの Java Date オブジェクトの違いを取得したいと考えています。Joda-Time ライブラリを使用しました。しかし、問題は、実際の日差よりも日差が大きいことです。

ここに私のコードスニペットがあります:

DateFormat formatter = new SimpleDateFormat("mm/dd/yyyy");

Date someDate=new Date();
Date today = Calendar.getInstance().getTime();

try     {
    someDate = formatter.parse("06/22/2010");
}
catch(ParseException pe)    {
    System.out.println("Parser Exception");
}

int days = Days.daysBetween(new DateTime(someDate), new DateTime(today)).getDays();

System.out.println(" Days Between " + someDate + " : " + today + " - " + days);

ここに私の出力があります:

 Days Between Fri Jan 22 00:06:00 IST 2010 : Sun Jul 25 19:27:01 IST 2010 - 184

ここで、なぜ「2010/06/22」が 1 月 22 日なのですか? 誰も同様の問題に直面していますか?

友達を助けて..事前に感謝..

4

5 に答える 5

19

mm月ではなく分を指しているようですMM。適切なレタリングのリストを確認するには、ここをチェックしてください:)

于 2010-07-25T14:13:09.300 に答える
12

月はMMです

あなたの場合:

DateFormat フォーマッタ = new SimpleDateFormat(" MM /dd/yyyy");

于 2010-07-25T14:11:29.943 に答える
4

あなたのパターンはわずかに欠陥があります。は分単位でmm解析されます。探しているのは月ですMM

于 2010-07-25T14:13:05.133 に答える
3

mm => 月ではなく分 - 月には MM が必要です - これで 1 月の問題が解決します!

于 2010-07-25T14:12:02.717 に答える