LocalDate.parse(입력문자열, 포맷터) 는 문자열을 LocalDate 객체로 변환할 때 사용하는 정적 메서드임.
LocalDate.parse(입력문자, 포맷) – 문자열을 날짜로 파싱하는 메서드
LocalDate.parse(String text, DateTimeFormatter formatter) 는
문자열 형식의 날짜를 LocalDate 객체로 변환(parse) 하는 메서드임.
입력 문자열의 형식을 DateTimeFormatter.ofPattern() 을 통해 지정할 수 있음.
1. 기본 구조
LocalDate.parse("2025-05-21", DateTimeFormatter.ofPattern("yyyy-MM-dd"));
- 첫 번째 인자: 문자열(String)
- 두 번째 인자: 포맷터(DateTimeFormatter)
- 반환값: LocalDate 객체
2. 예제 ① 기본 포맷 (ISO-8601)
Java의 LocalDate.parse(String) 는 포맷을 생략하면 ISO-8601 형식(yyyy-MM-dd)으로 간주함
LocalDate date = LocalDate.parse("2025-05-21");
// formatter 생략 가능
3. 예제 ② 사용자 지정 포맷 사용
String input = "21/05/2025";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
LocalDate date = LocalDate.parse(input, formatter); // 2025-05-21
→ 포맷이 다르면 DateTimeParseException 예외가 발생함
4. 예제 ③ 한글 날짜 파싱
String input = "2025년 5월 21일";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy년 M월 d일");
LocalDate date = LocalDate.parse(input, formatter);
→ 포맷 문자열은 입력과 정확히 일치해야 함
5. 주의사항
항목 | 설명 |
포맷 불일치 | 포맷이 입력 문자열과 다르면 DateTimeParseException 발생 |
MM vs mm | MM: 월 / mm: 분 → 혼용 금지 |
24시간제 사용 시 | LocalDate는 시/분/초 없음 → 시간 관련 포맷 사용 불가 |
6. 자주 쓰는 포맷 패턴
포맷 | 의미 | 예시 |
yyyy-MM-dd | ISO 기본 형식 | 2025-05-21 |
dd/MM/yyyy | 유럽식 | 21/05/2025 |
yyyy.MM.dd | 점(.) 구분 | 2025.05.21 |
yyyy년 M월 d일 | 한글 포맷 | 2025년 5월 21일 |
7. 실무 활용 예시
활용 상황 | 설명 |
사용자 입력 날짜 파싱 | Form, Excel 등에서 입력된 날짜 처리 |
외부 API 응답 파싱 | JSON 등에서 전달된 날짜 문자열을 객체로 변환 |
파일 이름의 날짜 추출 | 로그 파일 이름 등에서 날짜 추출 |
정리
LocalDate.parse(입력문자, 포맷) 은 문자열을 LocalDate 객체로 변환할 때 사용하는 메서드임.
DateTimeFormatter.ofPattern() 과 함께 사용하여 다양한 형식의 문자열을 날짜로 안전하게 파싱할 수 있음.
입력 포맷이 정확히 일치해야 하며, 날짜만을 처리하기 때문에 시간 정보는 포함할 수 없음.
출처 : ChatGPT
'BE > Java' 카테고리의 다른 글
변수 정리 (3) | 2025.07.22 |
---|---|
중첩, 내부클래스 (2) | 2025.07.21 |
date.format() (0) | 2025.05.28 |
DateTimeFormatter.ofPattern (0) | 2025.05.27 |
temporalAdjusters (0) | 2025.05.26 |