728x90
반응형
특정날짜구하기같은 경우 쿼리로 구해오는 경우가 많은데
어떨땐 자바에서 구해야할때가 있다.
입력받은날짜로 해당주의 날짜구하기 (ex. 20100203의 경우 20100201,20100202,20100202,20100203,20100204,20100205,20100206,20100207를 스트링배열로 리턴받음)
/**
* 특정 날짜가 포함된 주 날짜들 return
* @param dateStr
* @return
*/
public static String[] getDaysOfWeek(String dateStr) {
DateFormat df = new SimpleDateFormat("yyyy.MM.dd");
String[] arrYMD = new String[7];
try {
Date date = df.parse(dateStr);
Calendar cal = Calendar.getInstance();
cal.setTime(date);
int inYear = cal.get(cal.YEAR);
int inMonth = cal.get(cal.MONTH);
int inDay = cal.get(cal.DAY_OF_MONTH);
int yoil = cal.get(cal.DAY_OF_WEEK); //요일나오게하기(숫자로)
if(yoil != 1){ //해당요일이 일요일이 아닌경우
yoil = yoil-2;
}else{ //해당요일이 일요일인경우
yoil = 7;
}
inDay = inDay-yoil;
for(int i = 0; i < 7;i++){
cal.set(inYear, inMonth, inDay+i); //
String y = Integer.toString(cal.get(cal.YEAR));
String m = Integer.toString(cal.get(cal.MONTH)+1);
String d = Integer.toString(cal.get(cal.DAY_OF_MONTH));
if(m.length() == 1) m = "0" + m;
if(d.length() == 1) d = "0" + d;
//arrYMD[i] = y+m +d;
arrYMD[i] = m +"."+d;
}
} catch (ParseException e) {
}
return arrYMD;
}
728x90
반응형
'Study > Java' 카테고리의 다른 글
[Java] url 존재 여부 체크 (0) | 2021.01.26 |
---|---|
[Java] 오늘, 어제, 이번달, 올해, 지난해 등 날짜 구하기 (0) | 2021.01.26 |
[Java] SimpleDateFormat 사용법과 특정 날짜 요일 구하기 (0) | 2021.01.19 |
[Java] 두 날짜 사이 날짜 구하기 (0) | 2021.01.15 |
[Java] 문자열 치환(Replace) 사용법 & 예제 (0) | 2020.12.24 |
댓글