반응형
DB 저장 시 반드시 사용하는 날짜 데이터의
포맷을 변경해 보도록 하겠습니다.
날짜 데이터는 여러 가지 타입이 있지만
보통 포맷을 변경하기 위해 날짜 -> 텍스트로
변경하여 진행 하도록 하겠습니다.
일반적인 날짜 포맷
public class dateType{
public static void main(String[] args) throws Exception {
//날짜 포맷별 데이터 파싱
String date_type1 = "2022-11-03";
String date_type2 = "2022/11/03";
String date_type3 = "2022년 11월 03일";
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-mm-dd");
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy/mm/dd");
SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy년 mm월 dd일");
Date format1 = sdf1.parse(date_type1);
Date format2 = sdf2.parse(date_type2);
Date format3 = sdf3.parse(date_type3);
System.out.println("타입1 : "+sdf1.format(format1));
System.out.println("타입2 : "+sdf2.format(format2));
System.out.println("타입3 : "+sdf3.format(format3));
}
}
String 타입의 날짜를 SimpleDateFormat 데이터에 파싱 한 결과입니다.
주목할 점은 String 타입의 데이터가 SimpleDateFormat 타입과 맞아야
파싱이 된다는 점입니다.
포맷 즉, 포맷이 맞지 않으면 에러가 발생합니다.
포맷 변경 소스
위의 소스를 바탕으로 한번 포맷을 바꿔보겠습니다.
public class dateType{
public static void main(String[] args) throws Exception {
//현재날짜 포맷 변경
Calendar c = Calendar.getInstance();
Date dt = c.getTime();
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd hh:mm:ss");
System.out.println("현재날짜(시간) : "+ sdf.format(dt));
//포맷 변경 1,2
sdf.applyPattern("yyyy년 MM월 dd일 hh시 mm분 ss초");
System.out.println("포맷1 : "+ sdf.format(dt));
sdf.applyPattern("yyyy/MM/dd. (hh시 mm분 ss초)");
System.out.println("포맷2 : "+ sdf.format(dt));
}
}
Calendar를 이용하여 현재날짜를 얻고
Date에 할당합니다.
그리고 SimpleDateFormat에 파싱 하면 현재 날짜를 출력하였는데요.
그리고 SimpleDateFormat의 applyPattern을 이용하면 날짜의 패턴을 변경할 수 있습니다.
위의 소스에서는 applyPattern을 이용하여 포맷을 2가지로 변경하여 출력해 보았습니다.
반응형
'Dev > Java' 카테고리의 다른 글
[Java] 다형성 예제 및 개념과 형변환 방법 (0) | 2022.12.14 |
---|---|
[Java] 특정 문자 기준으로 자르기 StringTokenizer 사용법 (0) | 2022.12.13 |
[Java] 메소드 오버라이딩 사용 예제와 샘플 소스 (0) | 2022.11.17 |
[Java] 생성자 사용법 [초기화 및 오버로딩] (0) | 2022.11.16 |
[Java] 메소드 오버로딩 정의와 예제 소스 (0) | 2022.11.15 |