날짜 초기값 문자열 셋팅하기 (시작일, 종료일)

By | 2월 26, 2010

페이지를 초기에 로딩할 때 다음과 같은 값을 기본으로 INPUT 박스 안에 설정해 주어야 할 때가 있다.

시작일 : 20100101     종료일 : 20100131     (특정 월의 처음~끝)

위의 경우를 다음의 코드로 해결해 보자

  Date now = new Date();
  //MiscUtils은 사용자정의 유틸로, 어쨌든 결과는 '20100101' 의 형태
  String curDate = MiscUtils.RF_DATE.format(now);       
  String strDt = curDate.substring(0,6) + "01";     //시작일 : 1일
          
  //종료일구하기
  //각 달의 마지막날

  String lastDay[] = new String[] {"31","28","31","30","31","30","31","31","30","31","30","31"};      
  int y = Integer.parseInt(curDate.substring(0, 3));
  if((y%4==0)&&((y%100!=0)||(y%400==0))) lastDay[1] = "29";   //윤년일 경우 2월을 29일로

  int m = Integer.parseInt(curDate.substring(4,6)) - 1;
  String endDt = curDate.substring(0,6) + lastDay[m];

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments