6

重複の可能性:
Javaで日付/時刻の差を計算する

私は Android の初心者で、新しいアプリを作りたいと思っています。currentDate を使用して、2 つの日付 (dd/mm/yyyy) 形式を減算したいと考えています。たとえば、2013 年 1 月 2 日と currentDate の間の日数の違いを見つけたいとします。どうすればいいですか?

4

2 に答える 2

20
SimpleDateFormat dfDate  = new SimpleDateFormat("dd/MM/yyyy");
    java.util.Date d = null;
    java.util.Date d1 = null;
    Calendar cal = Calendar.getInstance();
    try {
            d = dfDate.parse("01/02/2012 ");
            d1 = dfDate.parse(dfDate.format(cal.getTime()));//Returns 15/10/2012
        } catch (java.text.ParseException e) {
            e.printStackTrace();
        }

    int diffInDays = (int) ((d.getTime() - d1.getTime())/ (1000 * 60 * 60 * 24));
    System.out.println(diffInDays);

詳細な例については、Ex1Ex2を確認してください

于 2012-10-15T09:03:19.540 に答える
1

2 つの日付間の経過時間を計算するためのいくつかのユーティリティ メソッドを提供するDateUtilsを調べることができますが、表現のためだけです。閏年、閏秒、夏時間/冬時間の変更などを考慮していないため、日/ミリ秒間の変換に直接的な方法を使用しないでください。これらの考慮事項は、Calendar クラスによって処理されます。

更新Jodaライブラリを 使用して、必要な相対日付と時刻の計算を実行できます。

于 2012-10-15T09:16:05.943 に答える