[Java] DateTimeFormatter.ofPattern 사용법
2024. 6. 19. 22:03ㆍWebBack/Java
DateTimeFormatter 클래스란?
DateTimeFormatter은 Java.util.Data와 SimpleDateFormat을 대체하는 클래스이다.
ofPattern 메서드는 사용자가 지정한 패턴에 따라 날짜와 시간을 포매팅하거나 파싱하는 기능을 제공한다.
메서드 요약
public static DateTimeFormatter ofPattern(String pattern) {
return new DateTimeFormatterBuilder().appendPattern(pattern).toFormatter();
}
public static DateTimeFormatter ofPattern(String pattern, Locale locale) {
return new DateTimeFormatterBuilder().appendPattern(pattern).toFormatter(locale);
}
이 메서드는 다음과 같은 매개 변수를 받는다.
1. (문자열)
2. (문자열, Locale 매개변수)
여기서 사용되는 문자열은 대표적으로 다음과 같다.
- yyyy:4자리 연도
- MM: 2자리 월
- dd: 2자리 일
- HH: 24시간 형식의 2자리 시간
- mm: 2자리 분
- ss: 2자리 초
자세한 내용은 아래 내용을 참고해주길 바란다.
더보기
더보기
Symbol Meaning Presentation Examples
------ ------- ------------ -------
G era text AD; Anno Domini; A
u year year 2004; 04
y year-of-era year 2004; 04
D day-of-year number 189
M/L month-of-year number/text 7; 07; Jul; July; J
d day-of-month number 10
Q/q quarter-of-year number/text 3; 03; Q3; 3rd quarter
Y week-based-year year 1996; 96
w week-of-week-based-year number 27
W week-of-month number 4
E day-of-week text Tue; Tuesday; T
e/c localized day-of-week number/text 2; 02; Tue; Tuesday; T
F week-of-month number 3
a am-pm-of-day text PM
h clock-hour-of-am-pm (1-12) number 12
K hour-of-am-pm (0-11) number 0
k clock-hour-of-am-pm (1-24) number 0
H hour-of-day (0-23) number 0
m minute-of-hour number 30
s second-of-minute number 55
S fraction-of-second fraction 978
A milli-of-day number 1234
n nano-of-second number 987654321
N nano-of-day number 1234000000
V time-zone ID zone-id America/Los_Angeles; Z; -08:30
z time-zone name zone-name Pacific Standard Time; PST
O localized zone-offset offset-O GMT+8; GMT+08:00; UTC-08:00;
X zone-offset 'Z' for zero offset-X Z; -08; -0830; -08:30; -083015; -08:30:15;
x zone-offset offset-x +0000; -08; -0830; -08:30; -083015; -08:30:15;
Z zone-offset offset-Z +0000; -0800; -08:00;
p pad next pad modifier 1
' escape for text delimiter
'' single quote literal '
[ optional section start
] optional section end
# reserved for future use
{ reserved for future use
} reserved for future use
메서드 사용법
DateTimeFormatter.ofPattern은 다음과 같이 사용한다.
import java.time.format.DateTimeFormatter;
import java.time.LocalDateTime;
public class Main {
public static void main(String[] args) {
// DateTimeFormatter 인스턴스 생성
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
// 현재 날짜와 시간을 포매팅
String formattedDateTime = LocalDateTime.now().format(formatter);
// 결과 출력
System.out.println("포매팅된 날짜와 시간: " + formattedDateTime);
}
}
사용법은 SimpleDateFormat과 크게 다르지 않다.
다만, Locale 변수를 넣으면 지역마다 날짜를 다르게 표기할 수 있다.
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Locale;
public class Main {
public static void main(String[] args) {
LocalDateTime now = LocalDateTime.now();
// 미국 포맷
DateTimeFormatter usFormatter = DateTimeFormatter.ofPattern("MM/dd/yyyy", Locale.US);
String usFormattedDate = now.format(usFormatter);
// 프랑스 포맷
DateTimeFormatter frFormatter = DateTimeFormatter.ofPattern("dd/MM/yyyy", Locale.FRANCE);
String frFormattedDate = now.format(frFormatter);
// 독일 포맷
DateTimeFormatter deFormatter = DateTimeFormatter.ofPattern("dd.MM.yyyy", Locale.GERMANY);
String deFormattedDate = now.format(deFormatter);
// 결과 출력
System.out.println("미국 형식: " + usFormattedDate);
System.out.println("프랑스 형식: " + frFormattedDate);
System.out.println("독일 형식: " + deFormattedDate);
}
}
'WebBack > Java' 카테고리의 다른 글
[Java] LocalDate.getMonth, getMonthValue (0) | 2024.06.25 |
---|---|
[Java] LocalDate.parse 메서드 사용법 (0) | 2024.06.19 |
[Java] Files.readAllLines 사용법 (0) | 2024.06.19 |
[Java] Paths 사용법 (get, getFileName, getParent, toAbsolutePath) (0) | 2024.06.19 |
[Java] 스레드(thread) - run, start, I/O블락킹, setPriority (0) | 2024.06.18 |