package com.emg.matchs.utils;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
/**
* @Auther: sss
* @Date: 2020/6/3 14:41
* @Description:
* 注意問題:
* 在Calendar中每週是從我們中國人的週日(星期七)開始計算的.
* 所以Calendar的週一實際爲我們中國人的上週的星期七.
* 在此需要特殊處理一下.
*/
public class Test {
/**
* 根據日期字符串判斷當月第幾周
*
* @param str
* @return
* @throws Exception
*/
public static int getWeek(String str) throws Exception {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date = sdf.parse(str);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
//第幾周
int week = calendar.get(Calendar.WEEK_OF_MONTH);
//第幾天,從週日開始
int day = calendar.get(Calendar.DAY_OF_WEEK);
if (day == 1) {
day = 7;
week = week - 1;
} else {
day = day - 1;
}
return week;
}
}