Tôi cần lấy số của tất cả các ngày trong tuần (MON đến SUN) dựa vào ngày nào được gửi dưới dạng thông số.Nhận tất cả các ngày trong tuần hiện tại?
Ví dụ:
Tôi vượt qua ngày 2 tháng 5 và tôi nhận được một mảng [30,1,2,3,4,5,6] trong tuần này thực sự.
Hoặc, tôi vượt qua ngày 16 tháng 5 và tôi nhận được một mảng [14,15,16,17,18,19,20].
Tôi đã cố gắng sử dụng mã này, nhưng nó trở lại 7 ngày kể từ hôm nay, mà tôi không muốn.
//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);
}
Nhưng đây không phải là những gì tôi cần. Tôi cần phải vượt qua trong ngày hôm nay (THU) và để có được ngày của tuần này của tháng - Thứ hai, ngày 30 tháng tư tới Sun, tháng 6.
EDIT
Tôi nhận ra rằng tôi có một mã số trong đó phát hiện mà tuần của một tháng. Có cách nào để sử dụng dữ liệu này và đặt ngày cho Thứ Hai không? Ví dụ, tôi vượt qua ngày 16 tháng 5 và sau đó tôi phát hiện ra rằng đó là tuần thứ 3 của tháng 5 và tôi đã đặt biến số firstDayOfWeek
(biến mới) thành Ngày 14 tháng 5
Bạn có thể giảm mã mẫu xuống bản chất không? Chúng tôi không cần mã "tuần nào trong tháng" và nó lúng túng ngay từ cái nhìn đầu tiên. –