3

次の条件に基づいて日付を取得する必要があります、

現在の日付から、ユーザーが日付(1-31)のみを選択した場合は、現在の日付からそれを減算して、新しい日付を取得する必要があります。

ユーザーがweeks(1-53)を選択した場合、選択したno'ofweeksを現在の日付no'of weeksから削除し、新しい日付を取得する必要があります。

ユーザーが月(1〜12)のみを選択した場合、選択した月数を現在の日付の月から削除して、新しい日付を取得する必要があります。
日付チェックのサンプルコード。

Calendar today=Calendar.getInstance();  
int month=today.MONTH;  

int year=today.YEAR;  
today.clear();  
today.set(year, month,dateOfMonth);
date=today.getTime();

どんなロジックでも高く評価されています。
前もって感謝します。

4

3 に答える 3

3
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.setTime(currentDate);
if (inDays) {
  cal.add(Calendar.DATE, -n);
} else if (inWeeks) {
  cal.add(Calendar.WEEK_OF_YEAR, -n);
} else if (inMonths) {
  cal.add(Calendar.MONTH, -n);
}
于 2012-09-21T07:00:18.723 に答える
1

以下を使用して、これらすべてを実現できます。

java.util.Calendar.add(int, int)

例えば:

Calendar cal = Calendar.getInstance();
cal.add(Calendar.DAY_OF_MONTH, -10); // substracts 10 days from 'now'
于 2012-09-21T06:55:38.637 に答える
0

JodaTimeを使用します。

日付に日数を追加: http://joda-time.sourceforge.net/apidocs/org/joda/time/Days.html#plus(int )

于 2012-09-21T06:59:55.180 に答える