kr.co.hit.live.util
Class DateHelper

java.lang.Object
  extended by kr.co.hit.live.util.DateHelper

public class DateHelper
extends Object

Date 관련 Live Framework의 Helper Class

아래 Method들은 모두 static으로 선언 되었기 때문에 유념하기 바란다.

Since:
3.0
Version:
$Revision: 1.1 $ $Date: 2006/09/26 08:20:11 $
Author:
노준훈

Field Summary
static int BOTH_DAY_ADD
          양편넣기
static int DAY
           일
static int FROM_DAY_ADD
          초일산입
static int MONTH
          월
static int MONTH_DAY
           개월
static int NONE_DAY_ADD
          양편빼기
static int TO_DAY_ADD
          말일산입
static int YEAR
          년
static int YEAR_DAY
           년/일
static int YEAR_MONTH
           년/월
static int YEAR_MONTH_DAY
           년/월/일
 
Constructor Summary
protected DateHelper()
           DateHelper의 default 컨스트럭터(Constructor).
 
Method Summary
static String addDays(String day, int addNum)
          yyyymmdd 형식의 날짜에 일을 더해서 리턴해준다.
static String addMonths(String day, int addNum)
          yyyymmdd 형식의 날짜에 월을 더해서 리턴해준다.
static String addYears(String day, int addNum)
          yyyymmdd 형식의 날짜에 년을 더해서 리턴해준다.
static Date dateFormatCheck(String source)
           해당 문자열이 "yyyyMMdd" 형식에 합당한지 여부를 판단하여 합당하면 Date 객체를 리턴한다.
static Date dateFormatCheck(String source, String format)
           해당 문자열이 주어진 일자 형식을 준수하는지 여부를 검사한다.
static String formatter(String strDate, String format)
           날짜형 문자열에 형식(format)을 적용한 문자열을 리턴.
static String getCalcDateAsString(String sYearPara, String sMonthPara, String sDayPara, int iTerm, String sGuBun)
           특정 날짜를 인자로 받아 그 일자로부터 주어진 기간만큼 추가한 날을 계산하여 문자열로 리턴한다.
static int getCalcDayAsInt(String sYearPara, String sMonthPara, String sDayPara, int iTerm, String sGuBun)
           특정 날짜를 인자로 받아 그 일자로부터 주어일 기간만큼 추가한 날을 계산하여 일을 리턴한다.
static String getCalcDayAsString(String sYearPara, String sMonthPara, String sDayPara, int iTerm, String sGuBun)
           특정 날짜를 인자로 받아 그 일자로부터 주어진 기간만큼 추가한 날을 계산하여 일을 리턴한다.
static int getCalcMonthAsInt(String sYearPara, String sMonthPara, String sDayPara, int iTerm, String sGuBun)
           특정 날짜를 인자로 받아 그 일자로부터 주어일 기간만큼 추가한 날을 계산하여 월을 리턴한다.
static String getCalcMonthAsString(String sYearPara, String sMonthPara, String sDayPara, int iTerm, String sGuBun)
           특정 날짜를 인자로 받아 그 일자로부터 주어진 기간만큼 추가한 날을 계산하여 월을 리턴한다.
static String getCalcTimeAsString(String from, String to)
           시간 형식의 문자열로 받은 시작 시간에서 끝시간을 더한 시간 리턴.
static int getCalcYearAsInt(String sYearPara, String sMonthPara, String sDayPara, int iTerm, String sGuBun)
           특정 날짜를 인자로 받아 그 일자로부터 주어진 기간만큼 추가한 날을 계산하여 년을 리턴한다.
static String getCalcYearAsString(String sYearPara, String sMonthPara, String sDayPara, int iTerm, String sGuBun)
           특정 날짜를 인자로 받아 그 일자로부터 주어진 기간만큼 추가한 날을 계산하여 년을 리턴한다.
static ValueObject getCalendarInfo(String sDate)
           해당 월의 달력 데이터를 생성하여 ValueObject로 제공하는 함수.
static ValueObject getCalendarInfo(String sDate, boolean korean)
           해당 월의 달력 데이터를 생성하여 ValueObject로 제공하는 함수.
static String getCurrentDateAsString()
           현재 날짜를 년월일을 합쳐서 String으로 리턴하는 메소드
static String getCurrentDateTimeAsString()
           현재 날짜와 시간을 년월일시분초를 합쳐서 String으로 리턴하는 메소드
static String getCurrentDateTimeMilliSecondAsString()
           현재 날짜와 시간을 년월일시분초밀리초를 합쳐서 String으로 리턴하는 메소드
static int getCurrentDayAsInt()
           현재 일을 리턴
static String getCurrentDayAsString()
           현재 일을 DD 형태로 리턴
static int getCurrentFullAge(String socialNo)
           주민번호를 넘겨 현재 시점의 만 나이를 구한다.
static int getCurrentHourAsInt()
           현재 시간을 리턴
static String getCurrentHourAsString()
           현재 시간을 HH 형태로 리턴
static int getCurrentMilliSecondAsInt()
           현재 초를 리턴
static String getCurrentMilliSecondAsString()
           현재 밀리초를 sss 형태로 리턴
static int getCurrentMinuteAsInt()
           현재 분을 리턴
static String getCurrentMinuteAsString()
           현재 분을 mm 형태로 리턴
static int getCurrentMonthAsInt()
           현재 월을 리턴
static String getCurrentMonthAsString()
           현재 월을 MM 형태로 리턴
static String getCurrentSecondAsString()
           현재 초를 ss 형태로 리턴
static String getCurrentTimeAsString()
           현재 시간을 시분초를 합쳐서 String으로 리턴하는 메소드
static int getCurrentYearAsInt()
           현재 연도값을 리턴
static String getCurrentYearAsString()
           현재 년도를 YYYY 형태로 리턴
static String getDateInterval(String from, String to)
           주어진 두 날짜(시작일, 기준일) 사이의 기간을 구하여 년,월,일 형태로 리턴한다.
static String getDateInterval(String from, String to, int format)
           주어진 두 날짜(시작일, 기준일) 사이의 기간을 구하여 명시된 형태로 리턴한다.
static String getDateTimeInterval(String from, String to)
          "HHmm", "yyyyMMdd", "yyyyMMddHH", "yyyyMMddHHmm", "yyyyMMddHHmmss" 또는 "yyyyMMddHHmmssSSS" 형태의 문자열로 표현된 Date 값을 받아서 그 시간 차이를 "yyyyMMddHHmmssSSS" 형태의 문자열로 반환한다.
static String getDay()
          서버의 현재일자를 yyyymmdd 형식의 스트링으로 리턴
static int getDayCount(String from, String to)
           8자리로된(yyyyMMdd) 시작일자와 종료일자 사이의 일수를 구함.
static int getDayCountForMonth(int year, int month)
           해당 년의 특정월의 마지막 일자를 구한다.
static int getDayCountWithFormatter(String from, String to, String format)
           정해진 일자 형식을 기반으로 시작일자와 종료일자 사이의 일자를 구한다.
static String getDayOfMonth()
          서버의 현재일자 중 일을 dd 형식의 스티링으로 리턴
static String getDayOfWeek()
          서버의 현재일자 중 요일을 한글명(1자리)으로 리턴
static int getDayOfWeek(int yyyy, int mm, int dd)
           해당월의 날짜를 주에 몇번째 요일인지 int형으로 리턴.
static String getDayOfWeek(String day)
          입력받은 일자의 요일을 한글명(1자리)으로 리턴
static String getDayOfWeekAsString(String sYear, String sMonth, String sDay)
           해당 년,월,일을 받아 요일을 리턴하는 메소드
static int getDayOfWeekCount(String from, String to, String yoil)
           시작일자와 종료일자 사이의 해당 요일이 몇번 있는지 계산한다.
static int getDayOfWeekOrdinal()
          서버의 현재일자 중 요일을 숫자로 리턴(일요일 0)
static int getDayOfWeekOrdinal(String day)
          입력받은 일자의 요일을 숫자로 리턴(일요일 0)
static int getDays(String from, String to)
          일자 간의 일수를 리턴
오늘부터 내일까지의 일수는 2가 리턴됨
static int getDays(String from, String to, int type)
          일자 간의 일수를 원하는 형태로 리턴
protected static String getFormatStringWithDate(String date)
           DATE 문자열을 이용한 format string을 생성
static int getFullAge(String socialNo, String keyDate)
           해당 대상자에 대해 기준일자에서의 만 나이를 구한다.
static int getFullAgeByBirthDate(String birthDate, String keyDate)
          생년월일(yyyymmdd)과 기준일(yyyymmdd)을 주면 만 나이를 구하여 리턴한다.
static String getHour()
          서버의 현재일시 중 시간을 HH 형식의 스트링으로 리턴
static String getMaxDay(String day)
          일자(yyyymmdd)를 입력받아 마지막 일자를 yyyymmdd 형태로 리턴
static String getMaxDayOfMonth(String day)
          일자(yyyymmdd)를 입력받아 마지막 일을 dd 타입으로 리턴
static String getMinute()
          서버의 현재일시 중 분을 mm 형식의 스트링으로 리턴
static String getMonth()
          서버의 현재일자 중 월을 mm 형식의 스트링으로 리턴
static int getMonths(String from, String to)
          일자간의 월수를 리턴
static String getSecond()
          서버의 현재일시 중 초를 ss 형식의 스트링으로 리턴
static String getSocialNo2DateFormat(String socialNo)
           주민번호를 출생 년월일로 표현한다.
static String getTermTimeAsString(String from, String to)
           시간 형식의 문자열로 주어지는 시작과 끝 시간의 term을 계산.
static long getTimeCount(String from, String to)
           yyyyMMddHHmmssSSS 와 같은 Format의 문자열로 시작 일자 시간, 끝 일자 시간을 주면 두 시간의 차이를 밀리초 값(long)으로 반환한다.
static long getTimeCount(String from, String to, String format)
           정해진 일자 형식을 기반으로 시작일자와 종료일자 사이의 일자를 구한다.
static long getTimesInMillis(String from, String to)
          일자간의 시간을 milli second 단위로 리턴
static String getYear()
          서버의 현재일자 중 년도를 yyyy 형식의 스트링으로 리턴
static int getYears(String from, String strTo)
          일자간의 년수를 리턴
static String hourToMinute(String time)
           시간 형식을 분 형식으로 변경.
static boolean isLeapYear(int year)
           윤달 여부 확인.
static boolean isLeapYear(String year)
           윤달 여부 확인.
static boolean isValidDate(String date)
          유효한 일자인지 체크하여 true/false를 리턴
static String minuteToHour(String minute)
           분을 시간 형식으로 변경.
static Date stringToDate(String day)
          문자열 타입의 일시(yyyyMMdd, yyyyMMddHHmmss)를 Date 타입으로 변환
static String toString(Date date, String format, Locale locale)
           Date -> String
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

YEAR

public static final int YEAR

See Also:
Constant Field Values

MONTH

public static final int MONTH

See Also:
Constant Field Values

DAY

public static final int DAY

See Also:
Constant Field Values

MONTH_DAY

public static final int MONTH_DAY

개월

See Also:
Constant Field Values

YEAR_MONTH

public static final int YEAR_MONTH

년/월

See Also:
Constant Field Values

YEAR_DAY

public static final int YEAR_DAY

년/일

See Also:
Constant Field Values

YEAR_MONTH_DAY

public static final int YEAR_MONTH_DAY

년/월/일

See Also:
Constant Field Values

FROM_DAY_ADD

public static final int FROM_DAY_ADD
초일산입

See Also:
Constant Field Values

TO_DAY_ADD

public static final int TO_DAY_ADD
말일산입

See Also:
Constant Field Values

BOTH_DAY_ADD

public static final int BOTH_DAY_ADD
양편넣기

See Also:
Constant Field Values

NONE_DAY_ADD

public static final int NONE_DAY_ADD
양편빼기

See Also:
Constant Field Values
Constructor Detail

DateHelper

protected DateHelper()

DateHelper의 default 컨스트럭터(Constructor).

Method Detail

getCalcDateAsString

public static String getCalcDateAsString(String sYearPara,
                                         String sMonthPara,
                                         String sDayPara,
                                         int iTerm,
                                         String sGuBun)

특정 날짜를 인자로 받아 그 일자로부터 주어진 기간만큼 추가한 날을 계산하여 문자열로 리턴한다.

 String result=DateHelper.getCalcDateAsString("2004","10","30",2,"day");
 

result는 "20041101"의 값을 갖는다.

Parameters:
sYearPara - 년도
sMonthPara - 월
sDayPara - 일
iTerm - 기간
sGuBun - 구분("day":일에 기간을 더함,"month":월에 기간을 더함,"year":년에 기간을 더함.)
Returns:
"년+월+일"

getCalcYearAsString

public static String getCalcYearAsString(String sYearPara,
                                         String sMonthPara,
                                         String sDayPara,
                                         int iTerm,
                                         String sGuBun)

특정 날짜를 인자로 받아 그 일자로부터 주어진 기간만큼 추가한 날을 계산하여 년을 리턴한다.

 String result=DateHelper.getCalcYearAsString("2004","12","30",2,"day");
 

 

result는 "2005"의 값을 갖는다.

Parameters:
sYearPara - 년도
sMonthPara - 월
sDayPara - 일
iTerm - 기간
sGuBun - 구분("day":일에 기간을 더함,"month":월에 기간을 더함,"year":년에 기간을 더함.)
Returns:
년(年)

getCalcMonthAsString

public static String getCalcMonthAsString(String sYearPara,
                                          String sMonthPara,
                                          String sDayPara,
                                          int iTerm,
                                          String sGuBun)

특정 날짜를 인자로 받아 그 일자로부터 주어진 기간만큼 추가한 날을 계산하여 월을 리턴한다.

 String result=DateHelper.getCalcMonthAsString("2004","12","30",2,"day");
 

result는 "01"의 값을 갖는다.

Parameters:
sYearPara - 년도
sMonthPara - 월
sDayPara - 일
iTerm - 기간
sGuBun - 구분("day":일에 기간을 더함,"month":월에 기간을 더함,"year":년에 기간을 더함.)
Returns:
월(月)

getCalcDayAsString

public static String getCalcDayAsString(String sYearPara,
                                        String sMonthPara,
                                        String sDayPara,
                                        int iTerm,
                                        String sGuBun)

특정 날짜를 인자로 받아 그 일자로부터 주어진 기간만큼 추가한 날을 계산하여 일을 리턴한다.

 String result=DateHelper.getCalcDayAsString("2004","12","30",3,"day");
 

result는 "02"의 값을 갖는다.

Parameters:
sYearPara - 년도
sMonthPara - 월
sDayPara - 일
iTerm - 기간
sGuBun - 구분("day":일에 기간을 더함,"month":월에 기간을 더함,"year":년에 기간을 더함.)
Returns:
일(日)

getCalcYearAsInt

public static int getCalcYearAsInt(String sYearPara,
                                   String sMonthPara,
                                   String sDayPara,
                                   int iTerm,
                                   String sGuBun)

특정 날짜를 인자로 받아 그 일자로부터 주어진 기간만큼 추가한 날을 계산하여 년을 리턴한다.

 int result=DateHelper.getCalcYearAsInt("2004","12","30",3,"day");
 

result는 2005의 값을 갖는다.

Parameters:
sYearPara - 년도
sMonthPara - 월
sDayPara - 일
iTerm - 기간
sGuBun - 구분("day":일에 기간을 더함,"month":월에 기간을 더함,"year":년에 기간을 더함.)
Returns:
년(年)

getCalcMonthAsInt

public static int getCalcMonthAsInt(String sYearPara,
                                    String sMonthPara,
                                    String sDayPara,
                                    int iTerm,
                                    String sGuBun)

특정 날짜를 인자로 받아 그 일자로부터 주어일 기간만큼 추가한 날을 계산하여 월을 리턴한다.

 int result=DateHelper.getCalcMonthAsInt("2004","12","30",3,"day");
 

result는 1의 값을 갖는다.

Parameters:
sYearPara - 년도
sMonthPara - 월
sDayPara - 일
iTerm - 기간
sGuBun - 구분("day":일에 기간을 더함,"month":월에 기간을 더함,"year":년에 기간을 더함.)
Returns:
월(月)

getCalcDayAsInt

public static int getCalcDayAsInt(String sYearPara,
                                  String sMonthPara,
                                  String sDayPara,
                                  int iTerm,
                                  String sGuBun)

특정 날짜를 인자로 받아 그 일자로부터 주어일 기간만큼 추가한 날을 계산하여 일을 리턴한다.

 int result=DateHelper.getCalcDayAsInt("2004","12","30",3,"day");
 

result는 2의 값을 갖는다.

Parameters:
sYearPara - 년도
sMonthPara - 월
sDayPara - 일
iTerm - 기간
sGuBun - 구분("day":일에 기간을 더함,"month":월에 기간을 더함,"year":년에 기간을 더함.)
Returns:
일(日)

getCurrentYearAsInt

public static int getCurrentYearAsInt()

현재 연도값을 리턴

Returns:
년(年)

getCurrentMonthAsInt

public static int getCurrentMonthAsInt()

현재 월을 리턴

Returns:
월(月)

getCurrentDayAsInt

public static int getCurrentDayAsInt()

현재 일을 리턴

Returns:
일(日)

getCurrentHourAsInt

public static int getCurrentHourAsInt()

현재 시간을 리턴

Returns:
시(時)

getCurrentMinuteAsInt

public static int getCurrentMinuteAsInt()

현재 분을 리턴

Returns:
분(分)

getCurrentMilliSecondAsInt

public static int getCurrentMilliSecondAsInt()

현재 초를 리턴

Returns:
밀리초

getCurrentYearAsString

public static String getCurrentYearAsString()

현재 년도를 YYYY 형태로 리턴

Returns:
년도(YYYY)

getCurrentMonthAsString

public static String getCurrentMonthAsString()

현재 월을 MM 형태로 리턴

Returns:
월(MM)

getCurrentDayAsString

public static String getCurrentDayAsString()

현재 일을 DD 형태로 리턴

Returns:
일(DD)

getCurrentHourAsString

public static String getCurrentHourAsString()

현재 시간을 HH 형태로 리턴

Returns:
시간(HH)

getCurrentMinuteAsString

public static String getCurrentMinuteAsString()

현재 분을 mm 형태로 리턴

Returns:
분(mm)

getCurrentSecondAsString

public static String getCurrentSecondAsString()

현재 초를 ss 형태로 리턴

Returns:
초(ss)

getCurrentMilliSecondAsString

public static String getCurrentMilliSecondAsString()

현재 밀리초를 sss 형태로 리턴

Returns:
밀리초(sss)

getCurrentDateAsString

public static String getCurrentDateAsString()

현재 날짜를 년월일을 합쳐서 String으로 리턴하는 메소드

Returns:
년+월+일 값

getCurrentTimeAsString

public static String getCurrentTimeAsString()

현재 시간을 시분초를 합쳐서 String으로 리턴하는 메소드

Returns:
시+분+초 값

getCurrentDateTimeAsString

public static String getCurrentDateTimeAsString()

현재 날짜와 시간을 년월일시분초를 합쳐서 String으로 리턴하는 메소드

Returns:
년+월+일+시+분+초 값

getCurrentDateTimeMilliSecondAsString

public static String getCurrentDateTimeMilliSecondAsString()

현재 날짜와 시간을 년월일시분초밀리초를 합쳐서 String으로 리턴하는 메소드

Returns:
년+월+일+시+분+초+밀리초 값

getDayOfWeekAsString

public static String getDayOfWeekAsString(String sYear,
                                          String sMonth,
                                          String sDay)

해당 년,월,일을 받아 요일을 리턴하는 메소드

Parameters:
sYear - 년도
sMonth - 월
sDay - 일
Returns:
요일(한글)

getFullAge

public static int getFullAge(String socialNo,
                             String keyDate)

해당 대상자에 대해 기준일자에서의 만 나이를 구한다.

 주민번호의 7번째 Flag
 - 0,9 일 경우 : 내국인 1800년도 출생
 - 1,2 일 경우 : 내국인 1900년도 출생
 - 3,4 일 경우 : 내국인 2000년도 출생
 - 5,6 일 경우 : 외국인 1900년도 출생
 - 7,8 일 경우 : 외국인 2000년도 출생
 
 int age = DateHelper.getFullAge("7701011234567","20041021");
 

age는 27의 값을 갖는다.

Parameters:
socialNo - 주민번호 13자리
keyDate - 기준일자 8자리
Returns:
만 나이

getFullAgeByBirthDate

public static int getFullAgeByBirthDate(String birthDate,
                                        String keyDate)
생년월일(yyyymmdd)과 기준일(yyyymmdd)을 주면 만 나이를 구하여 리턴한다.

Parameters:
birthDay -
keyDate -
Returns:

getSocialNo2DateFormat

public static String getSocialNo2DateFormat(String socialNo)

주민번호를 출생 년월일로 표현한다.

 주민번호의 7번째 Flag
 - 0,9 일 경우 : 내국인 1800년도 출생
 - 1,2 일 경우 : 내국인 1900년도 출생
 - 3,4 일 경우 : 내국인 2000년도 출생
 - 5,6 일 경우 : 외국인 1900년도 출생
 - 7,8 일 경우 : 외국인 2000년도 출생
 

Parameters:
socialNo - 주민번호
Returns:
년월일 8자리 [yyyyMMdd]

getCurrentFullAge

public static int getCurrentFullAge(String socialNo)

주민번호를 넘겨 현재 시점의 만 나이를 구한다.

 주민번호의 7번째 Flag
 - 0,9 일 경우 : 내국인 1800년도 출생
 - 1,2 일 경우 : 내국인 1900년도 출생
 - 3,4 일 경우 : 내국인 2000년도 출생
 - 5,6 일 경우 : 외국인 1900년도 출생
 - 7,8 일 경우 : 외국인 2000년도 출생
 

Parameters:
socialNo - 주민번호 13자리
Returns:
만 나이

getDayCountForMonth

public static int getDayCountForMonth(int year,
                                      int month)

해당 년의 특정월의 마지막 일자를 구한다.

Parameters:
year - 년도4자리
month - 월 1자리 또는 2자리
Returns:
특정월의 마지막 일자

isLeapYear

public static boolean isLeapYear(String year)

윤달 여부 확인.

Parameters:
year - 연도(String)
Returns:
윤달이면 true

isLeapYear

public static boolean isLeapYear(int year)

윤달 여부 확인.

Parameters:
year - 연도(int)
Returns:
윤달이면 true

getDayCount

public static int getDayCount(String from,
                              String to)
                       throws ParseException

8자리로된(yyyyMMdd) 시작일자와 종료일자 사이의 일수를 구함.

Parameters:
from - 8자리로된(yyyyMMdd)시작일자
to - 8자리로된(yyyyMMdd)종료일자
Returns:
날짜 형식이 맞고, 존재하는 날짜일 때 2개 일자 사이의 일수 리턴
Throws:
ParseException - 형식이 잘못 되었거나 존재하지 않는 날짜인 경우 발생함

dateFormatCheck

public static Date dateFormatCheck(String source)
                            throws ParseException

해당 문자열이 "yyyyMMdd" 형식에 합당한지 여부를 판단하여 합당하면 Date 객체를 리턴한다.

Parameters:
source - 대상 문자열
Returns:
"yyyyMMdd" 형식에 맞는 Date 객체를 리턴한다.
Throws:
ParseException - 형식이 잘못 되었거나 존재하지 않는 날짜인 경우 발생함

dateFormatCheck

public static Date dateFormatCheck(String source,
                                   String format)
                            throws ParseException

해당 문자열이 주어진 일자 형식을 준수하는지 여부를 검사한다.

Parameters:
source - 검사할 대상 문자열
format - Date 형식의 표현. 예) "yyyy-MM-dd".
Returns:
형식에 합당하는 경우 Date 객체를 리턴한다.
Throws:
ParseException - 형식이 잘못 되었거나 존재하지 않는 날짜인 경우 발생함

getDayCountWithFormatter

public static int getDayCountWithFormatter(String from,
                                           String to,
                                           String format)
                                    throws ParseException

정해진 일자 형식을 기반으로 시작일자와 종료일자 사이의 일자를 구한다.

Parameters:
from - 시작 일자
to - 종료 일자
Returns:
날짜 형식이 맞고, 존재하는 날짜일 때 2개 일자 사이의 일수를 리턴
Throws:
ParseException - 형식이 잘못 되었거나 존재하지 않는 날짜인 경우 발생함
See Also:
getTimeCount(String, String, String)

getFormatStringWithDate

protected static String getFormatStringWithDate(String date)
                                         throws ParseException

DATE 문자열을 이용한 format string을 생성

Parameters:
date - Date 문자열
Returns:
Java.text.DateFormat 부분의 정규 표현 문자열
Throws:
ParseException - 형식이 잘못 되었거나 존재하지 않는 날짜인 경우 발생함

getTimeCount

public static long getTimeCount(String from,
                                String to)
                         throws ParseException

yyyyMMddHHmmssSSS 와 같은 Format의 문자열로 시작 일자 시간, 끝 일자 시간을 주면 두 시간의 차이를 밀리초 값(long)으로 반환한다.

Parameters:
from - 시작일자
to - 끝일자
Returns:
두 일자 간의 차의 밀리초(long)값
Throws:
ParseException - 형식이 잘못 되었거나 존재하지 않는 날짜인 경우 발생함
See Also:
getFormatStringWithDate(String)

getTimeCount

public static long getTimeCount(String from,
                                String to,
                                String format)
                         throws ParseException

정해진 일자 형식을 기반으로 시작일자와 종료일자 사이의 일자를 구한다.

 Symbol   Meaning                 Presentation        Example
 ------   -------                 ------------        -------
 G        era designator          (Text)              AD
 y        year                    (Number)            1996
 M        month in year           (Text & Number)     July & 07
 d        day in month            (Number)            10
 h        hour in am/pm (1~12)    w(Number)            12
 H        hour in day (0~23)      (Number)            0
 m        minute in hour          (Number)            30
 s        second in minute        (Number)            55
 S        millisecond             (Number)            978
 E        day in week             (Text)              Tuesday
 D        day in year             (Number)            189
 F        day of week in month    (Number)            2 (2nd Wed in July)
 w        week in year            (Number)            27
 W        week in month           (Number)            2
 a        am/pm marker            (Text)              PM
 k        hour in day (1~24)      (Number)            24
 K        hour in am/pm (0~11)    (Number)            0
 z        time zone               (Text)              Pacific Standard Time
 '        escape for text         (Delimiter)
 ''       single quote            (Literal)           '
 

Parameters:
from - 시작 일자
to - 종료 일자
format -
Returns:
날짜 형식이 맞고, 존재하는 날짜일 때 2개 일자 사이의 밀리초를 리턴
Throws:
ParseException - 형식이 잘못 되었거나 존재하지 않는 날짜인 경우 발생함

getDayOfWeekCount

public static int getDayOfWeekCount(String from,
                                    String to,
                                    String yoil)
                             throws ParseException

시작일자와 종료일자 사이의 해당 요일이 몇번 있는지 계산한다.

Parameters:
from - 시작 일자
to - 종료 일자
yoil - 요일
Returns:
날짜 형식이 맞고, 존재하는 날짜일 때 2개 일자 사이의 일자 리턴
Throws:
ParseException - 발생. 형식이 잘못 되었거나 존재하지 않는 날짜

toString

public static String toString(Date date,
                              String format,
                              Locale locale)

Date -> String

Parameters:
date - Date which you want to change.
Returns:
String The Date string. Type, yyyyMMdd HH:mm:ss.

formatter

public static String formatter(String strDate,
                               String format)

날짜형 문자열에 형식(format)을 적용한 문자열을 리턴.

아래 문자열 자리수당 처리 자리수
-------------------------------
문자열 8자리 : yyyyMMdd
문자열 12자리 : yyyyMMddHHmm
문자열 14자리 : yyyyMMddHHmmss

 String source = "20050117";
 String format = "yyyy년 MM월 dd일";
 String result = DateHelperExt.formatter(source, format);
 
result"2005년 01월 17일" 을 가지게 된다.

Parameters:
strDate - 문자열 Data
format - 형식(format)
Returns:
완성된 문자열

getDateInterval

public static String getDateInterval(String from,
                                     String to,
                                     int format)
                              throws ParseException

주어진 두 날짜(시작일, 기준일) 사이의 기간을 구하여 명시된 형태로 리턴한다.

 String from = "19800810";
 String to = "20050330";
 String result1 = DateHelper.getDateInterval(from, to, DateHelper.YEAR_MONTH_DAY);
 String result2 = DateHelper.getDateInterval(from, to, DateHelper.YEAR_MONTH);
 String result3 = DateHelper.getDateInterval(from, to, DateHelper.YEAR_DAY);
 String result4 = DateHelper.getDateInterval(from, to, DateHelper.MONTH_DAY);
 String result5 = DateHelper.getDateInterval(from, to, DateHelper.DAY);
 String result6 = DateHelper.getDateInterval(from, to, DateHelper.MONTH);
 String result7 = DateHelper.getDateInterval(from, to, DateHelper.YEAR);
 
result1"24/7/20"의 값을 가지게 된다.
result2"24/7"의 값을 가지게 된다.
result3"24/232"의 값을 가지게 된다.
result4"295/20"의 값을 가지게 된다.
result5"24/232"의 값을 가지게 된다.
result6"8998"의 값을 가지게 된다.
result7"24"의 값을 가지게 된다.

-------------------------------------------------------------------
※ 리턴 받은 Data의 Format 변환 예제
String result = "24/7/20"; 일 경우
String[] tmp = result.split("/");
String result1 = tmp[0] + "년" + tmp[1] + "월" + tmp[2] + "일";
result1은 "24년7월20일"이 된다.

Parameters:
from - 시작일자로써 "yyyyMMdd"형태의 문자열
to - 기준일자로써 "yyyyMMdd"형태의 문자열
format - 리턴될 기간 문자열 format
             >년:YEAR
             >월:MONTH
             >일:DAY
             >월/일:MONTH_DAY
             >년/월:YEAR_MONTH
             >년/일:YEAR_DAY
             >년/월/일:YEAR_MONTH_DAY
Returns:
시작일자와 기준일자 사이의 기간
Throws:
ParseException

getDateTimeInterval

public static String getDateTimeInterval(String from,
                                         String to)
                                  throws ParseException
"HHmm", "yyyyMMdd", "yyyyMMddHH", "yyyyMMddHHmm", "yyyyMMddHHmmss" 또는 "yyyyMMddHHmmssSSS" 형태의 문자열로 표현된 Date 값을 받아서 그 시간 차이를 "yyyyMMddHHmmssSSS" 형태의 문자열로 반환한다.

Parameters:
from -
to -
Returns:
Throws:
ParseException

getDateInterval

public static String getDateInterval(String from,
                                     String to)
                              throws ParseException

주어진 두 날짜(시작일, 기준일) 사이의 기간을 구하여 년,월,일 형태로 리턴한다.

 String from = "19800810";
 String to = "20050330";
 String result1 = DateHelper.getDateInterval(from, to);
 
result1"24/7/20"의 값을 가지게 된다.

Parameters:
from - 시작일자로써 "yyyyMMdd"형태의 문자열
to - 기준일자로써 "yyyyMMdd"형태의 문자열
Returns:
시작일자와 기준일자 사이의 기간
Throws:
ParseException

getMaxDayOfMonth

public static String getMaxDayOfMonth(String day)
일자(yyyymmdd)를 입력받아 마지막 일을 dd 타입으로 리턴

Parameters:
day - String yyyymmdd
Returns:
String 일

getMaxDay

public static String getMaxDay(String day)
일자(yyyymmdd)를 입력받아 마지막 일자를 yyyymmdd 형태로 리턴

Parameters:
day - String yyyymmdd
Returns:
String yyyymmdd

getDay

public static String getDay()
서버의 현재일자를 yyyymmdd 형식의 스트링으로 리턴

Returns:
String yyyymmdd

getYear

public static String getYear()
서버의 현재일자 중 년도를 yyyy 형식의 스트링으로 리턴

Returns:
String yyyy

getMonth

public static String getMonth()
서버의 현재일자 중 월을 mm 형식의 스트링으로 리턴

Returns:
String mm

getDayOfMonth

public static String getDayOfMonth()
서버의 현재일자 중 일을 dd 형식의 스티링으로 리턴

Returns:
String dd

getDayOfWeek

public static String getDayOfWeek()
서버의 현재일자 중 요일을 한글명(1자리)으로 리턴

Returns:
String

getDayOfWeekOrdinal

public static int getDayOfWeekOrdinal()
서버의 현재일자 중 요일을 숫자로 리턴(일요일 0)

Returns:
int

getDayOfWeek

public static String getDayOfWeek(String day)
입력받은 일자의 요일을 한글명(1자리)으로 리턴

Parameters:
day - String
Returns:
String

getDayOfWeekOrdinal

public static int getDayOfWeekOrdinal(String day)
입력받은 일자의 요일을 숫자로 리턴(일요일 0)

Parameters:
day - yyyymmdd
Returns:
int

getHour

public static String getHour()
서버의 현재일시 중 시간을 HH 형식의 스트링으로 리턴

Returns:
String

getMinute

public static String getMinute()
서버의 현재일시 중 분을 mm 형식의 스트링으로 리턴

Returns:
String

getSecond

public static String getSecond()
서버의 현재일시 중 초를 ss 형식의 스트링으로 리턴

Returns:
String

addYears

public static String addYears(String day,
                              int addNum)
yyyymmdd 형식의 날짜에 년을 더해서 리턴해준다.

Parameters:
day - String
addNum - int
Returns:
String

addMonths

public static String addMonths(String day,
                               int addNum)
yyyymmdd 형식의 날짜에 월을 더해서 리턴해준다.

Parameters:
day - String
addNum - int
Returns:
String

addDays

public static String addDays(String day,
                             int addNum)
yyyymmdd 형식의 날짜에 일을 더해서 리턴해준다.

Parameters:
day - String
addNum - int
Returns:
String

getDays

public static int getDays(String from,
                          String to)
일자 간의 일수를 리턴
오늘부터 내일까지의 일수는 2가 리턴됨

Parameters:
from - String yyyymmdd
to - String yyyymmdd
Returns:
int

getDays

public static int getDays(String from,
                          String to,
                          int type)
일자 간의 일수를 원하는 형태로 리턴

Parameters:
from - String
to - String
type - int
  • FROM_DAY_ADD 한편넣기
  • TO_DAY_ADD 한편넣기
  • BOTH_DAY_ADD 양편넣기
  • NONE_DAY_ADD 양편빼기
Returns:
int

isValidDate

public static boolean isValidDate(String date)
유효한 일자인지 체크하여 true/false를 리턴

Parameters:
date - String
Returns:
boolean

getMonths

public static int getMonths(String from,
                            String to)
일자간의 월수를 리턴

Parameters:
from - String yyyymmdd
to - String yyyymmdd
Returns:
int

getYears

public static int getYears(String from,
                           String strTo)
일자간의 년수를 리턴

Parameters:
from - String yyyymmdd
strTo - String yyyymmdd
Returns:
int

getTimesInMillis

public static long getTimesInMillis(String from,
                                    String to)
일자간의 시간을 milli second 단위로 리턴

Parameters:
from - String yyyymmdd
to - String yyyymmdd
Returns:
long

stringToDate

public static Date stringToDate(String day)
문자열 타입의 일시(yyyyMMdd, yyyyMMddHHmmss)를 Date 타입으로 변환

Parameters:
day - String
Returns:
Date

getTermTimeAsString

public static String getTermTimeAsString(String from,
                                         String to)
                                  throws ParseException

시간 형식의 문자열로 주어지는 시작과 끝 시간의 term을 계산.

 String from   = "0700";
 String to     = "1130";
 String result = DateHelper.getTermTimeAsString(from, to);
 
result"0430" 을 가지게 된다.

Parameters:
from - 시작 시간 (네자리)
to - 끝 시간 (네자리)
Returns:
시작 시간에서 끝 시간을 뺀 시간 (네자리)
Throws:
ParseException
See Also:
getTimeCount(String, String)

getCalcTimeAsString

public static String getCalcTimeAsString(String from,
                                         String to)
                                  throws ParseException

시간 형식의 문자열로 받은 시작 시간에서 끝시간을 더한 시간 리턴.

 String from = "0700";
 String to = "0100";
 String result = DateHelper.getCalcTimeAsString(from, to);
 
result"0800" 을 가지게 된다.

Parameters:
from - 시작 시간 (네자리)
to - 끝 시간 (네자리)
Returns:
시작 시간에서 끝 시간을 더한 시간 (네자리)
Throws:
ParseException
See Also:
getTimeCount(String, String)

minuteToHour

public static String minuteToHour(String minute)

분을 시간 형식으로 변경.

 String min = "150";
 String result = DateHelper.getMin2Tim(min);
 
result"0230" 을 가지게 된다.

Parameters:
minute - 분
Returns:
시간분(네자리)

hourToMinute

public static String hourToMinute(String time)
                           throws ParseException

시간 형식을 분 형식으로 변경.

 String min = "0230";
 String result = DateHelperExt.getTim2Min(min);
 
result"150" 을 가지게 된다.

Parameters:
time - 분
Returns:
시간분(네자리)
Throws:
ParseException

getCalendarInfo

public static ValueObject getCalendarInfo(String sDate,
                                          boolean korean)
                                   throws ParseException

해당 월의 달력 데이터를 생성하여 ValueObject로 제공하는 함수.

 제공자 : 조환석 과장님 

Parameters:
sDate - "yyyyMMdd" format으로 넘겨주어야 함. dd는 사용하지 않음
korean - : 요일 컬럼을 한글로 할지 여부
Returns:
: ValueObject 해당월의 달력
Throws:
ParseException

getCalendarInfo

public static ValueObject getCalendarInfo(String sDate)
                                   throws ParseException

해당 월의 달력 데이터를 생성하여 ValueObject로 제공하는 함수. 요일 컬럼은 영문으로 넣어준다.

 제공자 : 조환석 과장님 

Parameters:
sDate - "yyyyMMdd" format으로 넘겨주어야 함. dd는 사용하지 않음
Returns:
: ValueObject 해당월의 달력
Throws:
ParseException

getDayOfWeek

public static int getDayOfWeek(int yyyy,
                               int mm,
                               int dd)

해당월의 날짜를 주에 몇번째 요일인지 int형으로 리턴.
[sun, mon, thu, wed, thu, fri, sat 순이며 좌측부터 index 1부터 시작한다.]

 제공자 : 조환석 과장님 

Parameters:
yyyy - 년도
mm - 월
dd - 일
Returns:
해당 주에 몇번째 일자


Copyright © 2014. All Rights Reserved.