안녕하세요. 제임스입니다.
계속해서 날짜 관련 코드 작성법에 대해 정리하고 있는데요. 오늘은 날짜를 원하는 형식으로 프린트 하는 방법에 대해 알아 보겠습니다.
앞선 포스팅에서는 각각의 년, 월, 일, 시간 값들을 뽑아낸 후 아래와 같이 이쁘지 않은 형태로 프린트 했었습니다.
1 | System.out.println(year+"."+month+"."+date+"("+korDayOfWeek+") "+hour+":"+minute+":"+second); | cs |
이렇게 프린트 하기 위해 너무 많은 코드를 작성해야 합니다.
그래서 자바에서는 SimpleDateFormat 이라는 무지무지 고마운 클래스를 제공하고 있습니다.
지금부터 이 SimpleDateFormat 에 대해 알아 보겠습니다.
■ SimpleDateFormat
참고: https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html
이 클래스는 날짜를 원하는 포맷으로 파싱시켜 주는 역할을 합니다.
이때 사용하는 패턴들이 있는데요. 그 패턴 중 우리가 사용할 몇가지만 정리해보겠습니다.
Letter |
Date or Time Component |
Presentation |
Examples |
y |
년 |
1996; 96 |
|
M |
월 |
July; Jul; 07 |
|
d |
일 |
10 |
|
H |
시간(24시간) |
0 |
|
h |
시간(am/pm) |
12 |
|
m |
분 |
30 |
|
s |
초 |
55 |
예제를 보겠습니다.
1 2 3 4 5 | SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss"); Calendar cal = Calendar.getInstance(); System.out.println(sdf.format(cal.getTime())); | cs |
위와 같이 simpleDateFormat 생성자에 패턴을 입력 했습니다.
format 함수를 이용하여 프린트 하면 원하는 패턴의 날짜형식이 리턴되게 됩니다.
yyyy > 2018 과 같이 년도를 4자리로 표현하라는 의미 입니다.
MM > 시간의 분을 나타내는 mm 과 구분해야 하는데요. 대문자 MM 으로 써야 월을 의미합니다.
dd > 일을 의미 합니다 (해당 달의 몇번째 일인지를 의미)
HH > 시간 중 시를 의미 하며 HH 는 24시간으로 표기 hh 는 12시간 기준으로 am/pm 을 추가로 표기 가능합니다.
mm > 시간의 분을 나타내는 것으로 월을 의미하는 MM 과 구분해야 합니다.
ss > 초를 의미 합니다.
년도를 의미하는 yyyy를 제외한 MM.dd HH:mm:ss 들이 두자리로 표기되어 있습니다 .
월/일 시:분:초 모두 최대 두자리로 표기 되기 때문인데요. 한자리일 경우 그냥 한자리로 표기 됩니다.
위 코드를 실행한 결과 값은 다음과 같습니다.
2018.01.06 01:35:44
yyyy 대신 yy 만 사용하게 되면 년도의 마지막 두자리만 표기 됩니다.
1 2 3 4 5 | SimpleDateFormat sdf = new SimpleDateFormat("yy.MM.dd HH:mm:ss"); Calendar cal = Calendar.getInstance(); System.out.println(sdf.format(cal.getTime())); | cs |
결과 값은 다음과 같습니다.
18.01.06 01:47:47
▼ 도움이 되셨다면 로그인이 필요 없는 ▼
▼ 하트 클릭 한번 부탁 드립니다 ▼
감사합니다 :D
'Java' 카테고리의 다른 글
[ 자바 코딩 ] 두 날짜 간 차이 구하기 Calendar.getTimeInMills() (1187) | 2018.01.12 |
---|---|
[ 자바 코딩 ] 날짜 계산하기 (1548) | 2018.01.11 |
[ 자바 코딩 ] GregorianCalendar 을 이용하여 원하는 날짜, 시간 정보 셋팅하기 (513) | 2018.01.08 |
[ 자바 코딩 ] Calendar 에 원하는 날짜, 시간 정보 셋팅하기 (515) | 2018.01.04 |
[ 자바 코딩 ] 오늘 날짜, 요일, 시간 구하기 (Calendar 클래스) (4) | 2018.01.03 |