|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object egovframework.rfc3.common.util.EgovDateUtil
public class EgovDateUtil
Date 에 대한 Util 클래스
<< 개정이력(Modification Information) >> 수정일 수정자 수정내용 ------- -------- --------------------------- 2009.02.01 이중호 최초 생성 Copyright (C) 2009 by MOPAS All right reserved.
Constructor Summary | |
---|---|
EgovDateUtil()
|
Method Summary | |
---|---|
static java.lang.String |
addDay(java.lang.String dateStr,
int day)
yyyyMMdd 혹은 yyyy-MM-dd 형식의 날짜 문자열을 입력 받아 일(day)를 증감한다. |
static java.util.Date |
addDays(java.util.Date date,
int days)
|
static java.lang.String |
addMonth(java.lang.String dateStr,
int month)
yyyyMMdd 혹은 yyyy-MM-dd 형식의 날짜 문자열을 입력 받아 월을 증감한다. |
static java.lang.String |
addYear(java.lang.String dateStr,
int year)
yyyyMMdd 혹은 yyyy-MM-dd 형식의 날짜 문자열을 입력 받아 년을 증감한다. |
static java.lang.String |
addYearMonthDay(java.lang.String sDate,
int year,
int month,
int day)
yyyyMMdd 혹은 yyyy-MM-dd 형식의 날짜 문자열을 입력 받아 년, 월, 일을 증감한다. |
static java.lang.String |
addYMDtoDayTime(java.lang.String sDate,
java.lang.String sTime,
int year,
int month,
int day,
int hour,
int minute,
java.lang.String formatStr)
입력된 일자에 연, 월, 일, 시간, 분을 가감한 날짜, 시간을 포멧스트링 형식으로 반환 |
static java.lang.String |
addYMDtoWeek(java.lang.String sDate,
int year,
int month,
int day)
입력된 일자에 연, 월, 일을 가감한 날짜의 요일을 반환 |
static boolean |
checkDate(java.lang.String sDate)
yyyyMMdd 혹은 yyyy-MM-dd 형식의 날짜 문자열을 입력 받아 유효한 날짜인지 검사. |
static boolean |
checkDate(java.lang.String year,
java.lang.String month,
java.lang.String day)
입력한 년, 월, 일이 유효한지 검사. |
static java.lang.String |
convertDate(java.lang.String sDate,
java.lang.String sTime,
java.lang.String sFormatStr)
날짜형태의 String의 날짜 포맷만을 변경해 주는 메서드 |
static java.lang.String |
convertDate(java.lang.String strSource,
java.lang.String fromDateFormat,
java.lang.String toDateFormat,
java.lang.String strTimeZone)
날짜형태의 String의 날짜 포맷 및 TimeZone을 변경해 주는 메서드 |
static java.util.Date |
convertStringToDate(java.lang.String dateStr,
java.lang.String format)
dateStr date 변환 |
static java.lang.String |
convertWeek(java.lang.String sWeek)
입력받은 요일의 영문명을 국문명의 요일로 반환 |
static int |
datetoInt(java.lang.String sDate)
입력된 일자를 int 형으로 반환 |
static java.lang.String |
formatDate(java.lang.String sDate,
java.lang.String ch)
yyyyMMdd 형식의 날짜문자열을 원하는 캐릭터(ch)로 쪼개 돌려준다 ex) 20030405, ch(.) -> 2003.04.05 ex) 200304, ch(.) -> 2003.04 ex) 20040101,ch(/) --> 2004/01/01 로 리턴 |
static java.lang.String |
formatTime(java.lang.String sTime,
java.lang.String ch)
HH24MISS 형식의 시간문자열을 원하는 캐릭터(ch)로 쪼개 돌려준다 ex) 151241, ch(/) -> 15/12/31 |
static java.lang.String |
getCurrentDate(java.lang.String dateType)
현재(한국기준) 날짜정보를 얻는다. |
static java.lang.String |
getDate(java.util.Date date,
java.lang.String format)
입력된 Date형을 원하는 포맷으로 변경 |
static int |
getDaysDiff(java.lang.String sDate1,
java.lang.String sDate2)
yyyyMMdd 혹은 yyyy-MM-dd 형식의 날짜 문자열 dateStr1 과
dateStr2 사이의 일 수를 구한다. |
static java.lang.String |
getRandomDate(java.lang.String sDate1,
java.lang.String sDate2)
입력받은 일자 사이의 임의의 일자를 반환 |
static java.lang.String |
getToday()
현재(한국기준) 날짜정보를 얻는다. |
static boolean |
isLeapYear(int year)
입력받은 연도가 윤년인지 아닌지 검사한다. |
java.lang.String |
leapYear(int year)
연도를 입력 받아 해당 연도 2월의 말일(일수)를 문자열로 반환한다. |
static int |
timetoInt(java.lang.String sTime)
입력된 시간을 int 형으로 반환 |
static java.util.HashMap |
toLunar(java.lang.String sDate)
입력받은 양력일자를 변환하여 음력일자로 반환 |
static java.lang.String |
toSolar(java.lang.String sDate,
int iLeapMonth)
입력받은 음력일자를 변환하여 양력일자로 반환 |
static java.lang.String |
validChkDate(java.lang.String dateStr)
입력된 일자 문자열을 확인하고 8자리로 리턴 |
static java.lang.String |
validChkTime(java.lang.String timeStr)
입력된 일자 문자열을 확인하고 8자리로 리턴 |
static boolean |
validDate(java.lang.String sDate)
입력일자의 유효 여부를 확인 |
static boolean |
validDate(java.lang.String sDate,
int sWeek)
입력일자, 요일의 유효 여부를 확인 |
static boolean |
validTime(java.lang.String sTime)
입력시간의 유효 여부를 확인 |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public EgovDateUtil()
Method Detail |
---|
public static java.lang.String addYearMonthDay(java.lang.String sDate, int year, int month, int day)
yyyyMMdd 혹은 yyyy-MM-dd 형식의 날짜 문자열을 입력 받아 년, 월, 일을 증감한다. 년, 월, 일은 가감할 수를 의미하며, 음수를 입력할 경우 감한다.
DateUtil.addYearMonthDay("19810828", 0, 0, 19) = "19810916" DateUtil.addYearMonthDay("20060228", 0, 0, -10) = "20060218" DateUtil.addYearMonthDay("20060228", 0, 0, 10) = "20060310" DateUtil.addYearMonthDay("20060228", 0, 0, 32) = "20060401" DateUtil.addYearMonthDay("20050331", 0, -1, 0) = "20050228" DateUtil.addYearMonthDay("20050301", 0, 2, 30) = "20050531" DateUtil.addYearMonthDay("20050301", 1, 2, 30) = "20060531" DateUtil.addYearMonthDay("20040301", 2, 0, 0) = "20060301" DateUtil.addYearMonthDay("20040229", 2, 0, 0) = "20060228" DateUtil.addYearMonthDay("20040229", 2, 0, 1) = "20060301"
dateStr
- 날짜 문자열(yyyyMMdd, yyyy-MM-dd의 형식)year
- 가감할 년. 0이 입력될 경우 가감이 없다month
- 가감할 월. 0이 입력될 경우 가감이 없다day
- 가감할 일. 0이 입력될 경우 가감이 없다
java.lang.IllegalArgumentException
- 날짜 포맷이 정해진 바와 다를 경우.
입력 값이 null
인 경우.public static java.lang.String addYear(java.lang.String dateStr, int year)
yyyyMMdd 혹은 yyyy-MM-dd 형식의 날짜 문자열을 입력 받아 년을
증감한다. year
는 가감할 수를 의미하며, 음수를 입력할 경우 감한다.
DateUtil.addYear("20000201", 62) = "20620201" DateUtil.addYear("20620201", -62) = "20000201" DateUtil.addYear("20040229", 2) = "20060228" DateUtil.addYear("20060228", -2) = "20040228" DateUtil.addYear("19000101", 200) = "21000101"
dateStr
- 날짜 문자열(yyyyMMdd, yyyy-MM-dd의 형식)year
- 가감할 년. 0이 입력될 경우 가감이 없다
java.lang.IllegalArgumentException
- 날짜 포맷이 정해진 바와 다를 경우.
입력 값이 null
인 경우.public static java.lang.String addMonth(java.lang.String dateStr, int month)
yyyyMMdd 혹은 yyyy-MM-dd 형식의 날짜 문자열을 입력 받아 월을
증감한다. month
는 가감할 수를 의미하며, 음수를 입력할 경우 감한다.
DateUtil.addMonth("20010201", 12) = "20020201" DateUtil.addMonth("19800229", 12) = "19810228" DateUtil.addMonth("20040229", 12) = "20050228" DateUtil.addMonth("20050228", -12) = "20040228" DateUtil.addMonth("20060131", 1) = "20060228" DateUtil.addMonth("20060228", -1) = "20060128"
dateStr
- 날짜 문자열(yyyyMMdd, yyyy-MM-dd의 형식)month
- 가감할 월. 0이 입력될 경우 가감이 없다
java.lang.IllegalArgumentException
- 날짜 포맷이 정해진 바와 다를 경우.
입력 값이 null
인 경우.public static java.lang.String addDay(java.lang.String dateStr, int day)
yyyyMMdd 혹은 yyyy-MM-dd 형식의 날짜 문자열을 입력 받아 일(day)를
증감한다. day
는 가감할 수를 의미하며, 음수를 입력할 경우 감한다.
위에 정의된 addDays 메서드는 사용자가 ParseException을 반드시 처리해야 하는 불편함이
있기 때문에 추가된 메서드이다.
DateUtil.addDay("19991201", 62) = "20000201" DateUtil.addDay("20000201", -62) = "19991201" DateUtil.addDay("20050831", 3) = "20050903" DateUtil.addDay("20050831", 3) = "20050903" // 2006년 6월 31일은 실제로 존재하지 않는 날짜이다 -> 20060701로 간주된다 DateUtil.addDay("20060631", 1) = "20060702"
dateStr
- 날짜 문자열(yyyyMMdd, yyyy-MM-dd의 형식)day
- 가감할 일. 0이 입력될 경우 가감이 없다
java.lang.IllegalArgumentException
- 날짜 포맷이 정해진 바와 다를 경우.
입력 값이 null
인 경우.public static int getDaysDiff(java.lang.String sDate1, java.lang.String sDate2)
yyyyMMdd 혹은 yyyy-MM-dd 형식의 날짜 문자열 dateStr1
과
dateStr2
사이의 일 수를 구한다.
dateStr2
가 dateStr1
보다 과거 날짜일 경우에는
음수를 반환한다. 동일한 경우에는 0을 반환한다.
DateUtil.getDaysDiff("20060228","20060310") = 10 DateUtil.getDaysDiff("20060101","20070101") = 365 DateUtil.getDaysDiff("19990228","19990131") = -28 DateUtil.getDaysDiff("20060801","20060802") = 1 DateUtil.getDaysDiff("20060801","20060801") = 0
dateStr1
- 날짜 문자열(yyyyMMdd, yyyy-MM-dd의 형식)dateStr2
- 날짜 문자열(yyyyMMdd, yyyy-MM-dd의 형식)
java.lang.IllegalArgumentException
- 날짜 포맷이 정해진 바와 다를 경우.
입력 값이 null
인 경우.public static boolean checkDate(java.lang.String sDate)
yyyyMMdd 혹은 yyyy-MM-dd 형식의 날짜 문자열을 입력 받아 유효한 날짜인지 검사.
DateUtil.checkDate("1999-02-35") = false DateUtil.checkDate("2000-13-31") = false DateUtil.checkDate("2006-11-31") = false DateUtil.checkDate("2006-2-28") = false DateUtil.checkDate("2006-2-8") = false DateUtil.checkDate("20060228") = true DateUtil.checkDate("2006-02-28") = true
dateStr
- 날짜 문자열(yyyyMMdd, yyyy-MM-dd의 형식)
public static boolean checkDate(java.lang.String year, java.lang.String month, java.lang.String day)
입력한 년, 월, 일이 유효한지 검사.
year
- 연도month
- 월day
- 일
public static java.lang.String convertDate(java.lang.String strSource, java.lang.String fromDateFormat, java.lang.String toDateFormat, java.lang.String strTimeZone)
strSource
- 바꿀 날짜 StringfromDateFormat
- 기존의 날짜 형태toDateFormat
- 원하는 날짜 형태strTimeZone
- 변경할 TimeZone(""이면 변경 안함)
public static java.lang.String formatDate(java.lang.String sDate, java.lang.String ch)
ex) 20030405, ch(.) -> 2003.04.05 ex) 200304, ch(.) -> 2003.04 ex) 20040101,ch(/) --> 2004/01/01 로 리턴
date
- yyyyMMdd 형식의 날짜문자열ch
- 구분자
public static java.lang.String formatTime(java.lang.String sTime, java.lang.String ch)
ex) 151241, ch(/) -> 15/12/31
str
- HH24MISS 형식의 시간문자열ch
- 구분자
public java.lang.String leapYear(int year)
year
-
public static boolean isLeapYear(int year)
입력받은 연도가 윤년인지 아닌지 검사한다.
DateUtil.isLeapYear(2004) = false DateUtil.isLeapYear(2005) = true DateUtil.isLeapYear(2006) = true
year
- 연도
public static java.lang.String getToday()
public static java.lang.String getCurrentDate(java.lang.String dateType)
public static java.lang.String convertDate(java.lang.String sDate, java.lang.String sTime, java.lang.String sFormatStr)
sDate
- 날짜sTime
- 시간sFormatStr
- 포멧 스트링 문자열
public static java.lang.String getRandomDate(java.lang.String sDate1, java.lang.String sDate2)
sDate1
- 시작일자sDate2
- 종료일자
public static java.util.HashMap toLunar(java.lang.String sDate)
sDate
- 양력일자
public static java.lang.String toSolar(java.lang.String sDate, int iLeapMonth)
sDate
- 음력일자iLeapMonth
- 음력윤달여부(IS_LEAP_MONTH)
public static java.lang.String convertWeek(java.lang.String sWeek)
sWeek
- 영문 요일명
public static boolean validDate(java.lang.String sDate)
sDate
- 일자
public static boolean validDate(java.lang.String sDate, int sWeek)
sDate
- 일자sWeek
- 요일 (DAY_OF_WEEK)
public static boolean validTime(java.lang.String sTime)
sTime
- 입력시간
public static java.lang.String addYMDtoWeek(java.lang.String sDate, int year, int month, int day)
sDate
- 날짜year
- 연month
- 월day
- 일
public static java.lang.String addYMDtoDayTime(java.lang.String sDate, java.lang.String sTime, int year, int month, int day, int hour, int minute, java.lang.String formatStr)
sDate
- 날짜sTime
- 시간year
- 연month
- 월day
- 일hour
- 시간minute
- 분formatStr
- 포멧스트링
public static int datetoInt(java.lang.String sDate)
sDate
- 일자
public static int timetoInt(java.lang.String sTime)
sTime
- 시간
public static java.lang.String validChkDate(java.lang.String dateStr)
sDate
-
public static java.lang.String validChkTime(java.lang.String timeStr)
sDate
-
public static java.lang.String getDate(java.util.Date date, java.lang.String format)
date
- format
-
public static java.util.Date convertStringToDate(java.lang.String dateStr, java.lang.String format)
dateStr
- format
-
public static java.util.Date addDays(java.util.Date date, int days)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |