- 날짜 또는 시각 정보를 원하는 형식으로 변환하는 과정
- SimpleDateFormat 클래스와 DateTimeFormatter 클래스 사용
- SimpleDateFormat : Date 타입 객체에 대한 형식화
- DateTimeFormatter : LocalXXX 타입 객체에 대한 형식화
형식문자
1. SimpleDateFormat 클래스 사용
Date today = new Date();
System.out.println(today);
➡️기본 표현 형식으로 출력됨(Wed Oct 25 11:23:57 KST 2023)
형식 지정 문자를 사용하여 형식 적용을 위한 패턴 문자열 생성
String pattern = "yyyy년 MM월 dd일 EEEE";
SimpleDateFormat 클래스 인스턴스 생성 => 파라미터로 패턴 문자열 전달
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
SimpleDateFormat 객체의 format() 메서드를 호출하여 Date 객체 전달
System.out.println(sdf.format(today)); // 결과값을 문자열로 출력하거나
String formatToday = sdf.format(today); // String 타입 변수에 저장가능
System.out.println(formatToday);
결과: 2023년 10월 25일 수요일
pattern = "yyyy/MM/dd(E) a KK:MM:ss";
SimpleDateFormat sdf2 = new SimpleDateFormat(pattern);
System.out.println(sdf2.format(today));
결과: 2023/10/25(수) 오전 11:10:44
2. DateTimeFormatter 클래스 사용
LocalDateTime now = LocalDateTime.now();
System.out.println(now);
결과가 2023-10-25T11:34:40.207842900 이런 형태인데 이 형태를 바꾸고 싶다면
DateTimeFormatter 클래스의 ofPattern() 메서드를 호출하여 파라미터로 패턴 문자열 전달하면 된다!
이때, 패턴 문자열은 SimpleDateFormat 클래스와 동일하게 사용
➡️주의할 점은, LocalTime과 LocalDate 클래스를 사용하는 경우 패턴 문자열이 존재X 정보를 포함하지 않도록 한다.
DateTimeFormatter dtf = DateTimeFormatter.ofPattern(pattern);
LocalDate 등의 날짜 및 시각 객체의 format() 메서드를 호출하여 파라미터로 DateTimeFormatter 객체 전달
System.out.println(now.format(dtf));
'JAVA' 카테고리의 다른 글
[JAVA] enum type (2) (0) | 2023.10.31 |
---|---|
[JAVA] enum type (1) (1) | 2023.10.31 |
[JAVA] java.time 패키지 (0) | 2023.10.25 |
[JAVA] 날짜 및 시각 관련 클래스를 알아보자 (0) | 2023.10.25 |
[JAVA] Math.random() 메서드 활용 100% (1) | 2023.10.24 |