Java/자바 정리
112. 날짜와 시간, 보기 좋게 출력해보자 – Date와 SimpleDateFormat
코딩하는냥이
2025. 5. 14. 12:09
반응형
이번 글에서는 자바에서 현재 날짜와 시간을 가져와 원하는 형식으로 출력하는 방법을 배워봅니다.
Date 객체는 시스템의 현재 시간을 표현하고, SimpleDateFormat은 이 시간을 지정한 문자열 형태로 포맷팅할 수 있도록 도와줍니다.
📌 예제 코드
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateExample {
public static void main(String[] args) {
Date now = new Date(); // 현재 시간 생성
String strNow = now.toString(); // 기본 문자열 형식
System.out.println(strNow); // 예: Tue May 14 10:32:17 KST 2025
SimpleDateFormat sdf = new SimpleDateFormat("yyyy년 MM월 dd일 E요일 HH시 mm분 ss초");
strNow = sdf.format(now); // 지정 형식으로 변환
System.out.println(strNow); // 예: 2025년 05월 14일 수요일 10시 32분 17초
}
}
💻 실행 결과 (날짜/시간은 실행 시점에 따라 달라짐)
Tue May 14 10:32:17 KST 2025
2025년 05월 14일 수요일 10시 32분 17초
💬 코드 설명
- Date now = new Date()는 현재 시각 정보를 포함한 Date 객체를 생성합니다.
- now.toString()은 시스템 기본 포맷으로 출력하며, 언어 및 운영체제 설정에 따라 달라질 수 있는 포맷입니다.
- SimpleDateFormat은 날짜와 시간 포맷을 직접 지정할 수 있는 클래스입니다.
- "yyyy년 MM월 dd일 E요일 HH시 mm분 ss초" 형식을 사용해 년/월/일/요일/시간 정보를 한글 형식으로 포맷합니다.
- sdf.format(now)는 Date 객체를 해당 포맷 문자열에 맞게 변환해 출력합니다.
💡 포인트 정리
- Date 클래스는 현재 날짜와 시간을 표현하는 객체입니다.
- SimpleDateFormat은 날짜 포맷을 지정해 날짜 정보를 보기 좋게 문자열로 출력할 수 있게 해줍니다.
- 주요 포맷 기호:
- yyyy : 연도, MM : 월, dd : 일
- E : 요일, HH : 24시간 시, mm : 분, ss : 초
- 날짜/시간 포맷은 원하는 언어나 표시 형식에 맞게 자유롭게 커스터마이징 가능합니다.
📌 정리하자면, Date와 SimpleDateFormat을 함께 사용하면 현재 날짜와 시간을 원하는 형태의 문자열로 쉽게 출력할 수 있습니다.
직관적이고 읽기 쉬운 포맷으로 시간 정보를 출력하면 로그 기록, UI 출력, 사용자 알림 등에 매우 유용하게 활용할 수 있습니다.