web-dev-qa-db-ja.com

前月の最初と最後の日付を取得する

可能性のある複製:
前月の最初の日付と最後の日付を取得する方法(Java)

Javaで、前月の最初と最後の日付を取得するにはどうすればよいですか?

私が間違っていなければ、次のコードは前月の最終日を取得することです。

Calendar aCalendar = Calendar.getInstance();
aCalendar.set(Calendar.DAY_OF_MONTH, -1);    
aCalendar.add(Calendar.DAY_OF_MONTH, -1) ;
System.out.println(new Timestamp(aCalendar.getTime().getTime()));

私が間違っているなら私を訂正してください。

ありがとうございました。

14
user915303

getActualMaximum() を使用します

Calendar aCalendar = Calendar.getInstance();
// add -1 month to current month
aCalendar.add(Calendar.MONTH, -1);
// set DATE to 1, so first date of previous month
aCalendar.set(Calendar.DATE, 1);

Date firstDateOfPreviousMonth = aCalendar.getTime();

// set actual maximum date of previous month
aCalendar.set(Calendar.DATE,     aCalendar.getActualMaximum(Calendar.DAY_OF_MONTH));
//read it
Date lastDateOfPreviousMonth = aCalendar.getTime();
41
Jigar Joshi
Calendar aCalendar = Calendar.getInstance();
aCalendar.set(Calendar.DATE, 1);
aCalendar.add(Calendar.DAY_OF_MONTH, -1);
Date lastDateOfPreviousMonth = aCalendar.getTime();
aCalendar.set(Calendar.DATE, 1);
Date firstDateOfPreviousMonth = aCalendar.getTime();
17
bradwoo8621