Potrzebuję uzyskać liczby wszystkich dni tygodnia (od MON do SUN) w zależności od tego, który dzień jest wysyłany jako parametr.Uzyskaj wszystkie dni bieżącego tygodnia?
Na przykład
Mijam 2 maja i otrzymuję tablicę [30,1,2,3,4,5,6], która faktycznie jest w tym tygodniu.
Albo, zdaję 16 maja i otrzymuję tablicę [14,15,16,17,18,19,20].
Próbowałem użyć tego kodu, ale wraca on 7 dni od dzisiaj, czego nie chcę.
//get which week of month
Calendar now = Calendar.getInstance();
now.set(mYear, mMonth, Integer.parseInt(extractedDay));
int weekOfMonth = now.get(Calendar.WEEK_OF_MONTH);
//get all days of clicked week
SimpleDateFormat format = new SimpleDateFormat("MM/dd/yyyy");
Calendar calendar = Calendar.getInstance();
calendar.setFirstDayOfWeek(Calendar.MONDAY);
calendar.set(mYear, mMonth, Integer.parseInt(extractedDay));
String[] days = new String[7];
for (int i = 0; i < 7; i++)
{
days[i] = format.format(calendar.getTime());
calendar.add(Calendar.DAY_OF_MONTH, 1);
}
Ale to nie jest to, czego potrzebuję. Muszę zdać dzisiejszy dzień (Czw) i aby termin ten tygodniu maja - Mon, kwi 30 do Słońca, 6 maja
EDIT
zdałem sobie sprawę, że mam kod, który wykrywa Tydzień miesiąca. Czy istnieje sposób na wykorzystanie tych danych i ustawienie daty na poniedziałek? Na przykład, zdaję 16 maja, a potem wykryję, że jest to 3 tydzień maja, i ustawiam zmienną firstDayOfWeek
(nowa zmienna) na 14 maja.
Czy możesz zredukować przykładowy kod do esencji? Nie potrzebujemy kodu "który tydzień miesiąca" i na pierwszy rzut oka zdezorientowało mnie to. –