일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 백준 알고리즘
- 자료구조
- 2884
- 현대암호
- 자동 형변환
- 연결된 예외
- class
- 암호론
- 백준
- 객체
- OOP
- HTML
- bubble-sort
- 재귀호출기본
- 공개키 암호
- LANG
- 프로그래밍
- 객체지향
- 소수판정
- 클래스 패스
- 알고리즘
- BufferedWrite
- 형변환 연산자
- lang package
- JSP
- java
- 디렉티브
- 예외처리
- jvm
- try&catch
Archives
- Today
- Total
코드일기장
[Java] SimpleDateFormat() 본문
Date와 Calendar만으로 날짜 데이터를 원하는 형태로 다양하게 출력하는 것은 불편하다.
그런 불편함을 해소하고자 만들어진 것이 SimpleDateFormat이다.
- 날짜와 시간을 다양한 형식으로 출력할 수 있게 해 준다.
import java.text.SimpleDateFormat;
import java.util.Date;
public class DecimalClass {
public static void main(String[] args){
Date today = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
System.out.println(sdf.format(today));
}
}
2022-03-06
기호 | 의미 | 보기 |
G | 연대(BC~AD) | AD |
y | 년도 | 2006 |
M | 월(1~12 또는 1월~12월) | 10 또는 10월, OCT |
w | 년의 몇 번째 주(1~53) | 50 |
W | 월의 몇 번째 주(1~5) | 4 |
D | 년의 몇 번째 일(1~366) | 155 |
d | 월의 몇 번째 일(1~31) | 20 |
F | 월의 몇 번째 요일(1~5) | 1 |
E | 요일 | 화 |
a | 오전/오후(AM,PM) | PM |
날짜
기호 | 의미 | 보기 |
H | 시간(0~23) | 21 |
k | 시간(1~24) | 21 |
h | 시간(1~12) | 9 |
K | 시간(0~11) | 21 |
m | 분(0~59) | 23 |
s | 초(0~59) | 40 |
S | 천분의 일초(0~999) | 450 |
z | Time zone(General time zone) | GMT+9:00 |
Z | Time zone(RFC 882 time zone) | +0900 |
시간
반대로 문자열에서 날짜와 시간을 뽑아낼 수 있다.
DecimalFormat이랑 똑같다. 문자열을 날짜와 시간으로 바꿀 때는 parse를 사용한다.
import java.text.SimpleDateFormat;
import java.util.Date;
public class DecimalClass {
public static void main(String[] args){
Date today = new Date();
SimpleDateFormat sdf1, sdf2, sdf3, sdf4,
sdf5, sdf6, sdf7, sdf8, sdf9;
sdf1 = new SimpleDateFormat("yyyy-MM-dd");
sdf2 = new SimpleDateFormat("''yy년 M월 d일 E요일");
sdf3 = new SimpleDateFormat("yyyy-MM-dd H:m:s.SSS");
sdf4 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss a");
sdf5 = new SimpleDateFormat("오늘은 올 해의 D번째 날입니다.");
sdf6 = new SimpleDateFormat("오늘은 이 달의 d번째 날입니다.");
sdf7 = new SimpleDateFormat("오늘은 올 해의 w번째 주입니다.");
sdf8 = new SimpleDateFormat("오늘은 이 달의 W번째 주입니다.");
sdf9 = new SimpleDateFormat("오늘은 이달의 F번째 E요일입니다.");
System.out.println(sdf1.format(today));
System.out.println(sdf2.format(today));
System.out.println(sdf3.format(today));
System.out.println(sdf4.format(today));
System.out.println(sdf5.format(today));
System.out.println(sdf6.format(today));
System.out.println(sdf7.format(today));
System.out.println(sdf8.format(today));
System.out.println(sdf9.format(today));
}
}
2022-03-06
'22년 3월 6일 일요일
2022-03-06 21:36:7.717
2022-03-06 09:36:07 오후
오늘은 올 해의 65번째 날입니다.
오늘은 이 달의 6번째 날입니다.
오늘은 올 해의 11번째 주입니다.
오늘은 이 달의 2번째 주입니다.
오늘은 이달의 1번째 일요일입니다.
Calendar클래스와 SimpleDateFormat
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class DecimalClass {
public static void main(String[] args){
SimpleDateFormat df = new SimpleDateFormat("yyyy년 MM월 dd일");
SimpleDateFormat df2 = new SimpleDateFormat("오늘은 E요일입니다.");
Calendar cal = Calendar.getInstance();
cal.set(2022,4,8);
String str = df.format(cal.getTime());
String str2 = df2.format(cal.getTime());
System.out.println(str);
System.out.println(str2);
}
}
2022년 05월 08일
오늘은 일요일입니다.
'Java' 카테고리의 다른 글
[Java] Iterator (0) | 2022.07.13 |
---|---|
[Java] 형식화 클래스, DecimalFormat (0) | 2022.03.06 |
[Java] Calendar 예제 (0) | 2022.03.03 |
[Java] Calendar 클래스 (0) | 2022.02.25 |
[Java] StringBuffer의 생성자와 메서드 (0) | 2022.02.18 |
Comments