반응형
공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!! 포스팅 내용이 찾아주신 분들께 도움이 되길 바라며 더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^
|
제목처럼 오늘 or 특정 날짜가 올해의 또는 이달의 몇 번째 주인지
구하는 방법입니다.
방법은 매우 간단합니다.
먼저 날짜 형식을 정해야겠죠? 저는 yyyy-MM-dd로 결정했습니다.
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd", Locale.KOREA);
private int getWeekOfYear(String date) {
Calendar calendar = Calendar.getInstance();
String[] dates = date.split("-");
int year = Integer.parseInt(dates[0]);
int month = Integer.parseInt(dates[1]);
int day = Integer.parseInt(dates[2]);
calendar.set(year, month - 1, day);
return calendar.get(Calendar.WEEK_OF_YEAR);
}
그리고 getWeekOfYear(String date) 메소드의 인자에
원하는 날짜를 넣기만 하면 됩니다.
오늘 날짜를 넣고 싶다면
int thisWeek = getWeekOfYear(sdf.format(new Date()));
요렇게 사용사면 됩니다.
주의하실 점은
getWeekOfYear()에서
calendar.set(year, month - 1, day)에서 month 가 아니라 month - 1인걸 보실 수
있는데요.
월이 우리는 1부터 시작하지만 저 Calendar 클래스에서는 1월 = 0 입니다.
때문에 -1을 해줘야 우리가 원하는 월로 값이 입력됩니다.
올해의 몇 주차인지가 아니라 이달의 몇 주차인지를 구하시려면
Calendar.WEEK_OF_YEAR 대신에 Calendar.WEEK_OF_MONTH를 사용하심
됩니다.
어렵지 않죠? 이상입니다. 감사합니다.
반응형
'자바' 카테고리의 다른 글
자바 중첩(이중)포문(for)에서 안쪽 포문에서 조건문 걸렸을 때 바깥포문 빠져나가기 (0) | 2019.05.21 |
---|---|
자바 정수 1의 자리, 10의 자리 반올림 올림 내림 (0) | 2019.04.15 |
JAVA File 파일 생성 시 디렉토리가 존재하지 않을 경우 디렉토리 생성하기 (0) | 2019.01.02 |
자바 Double 더블형 실수형 소수점 자리 자르기 (0) | 2018.12.17 |
Gson get("key") 값이 null일 때 처리 방법 (0) | 2018.11.22 |