Java에서 LocalDate 객체를 String으로 변환하는 다양한 방법에 대해서 알아보겠습니다.

1. toString()을 이용한 방법

LocalDate의 toString()은 날짜 값을 문자열로 변환합니다.

아래 코드의 실행 결과를 보면 yyyy-MM-dd 형식으로 출력됩니다.

import java.time.LocalDate;

public class Example {

    public static void main(String[] args) {

        LocalDate date = LocalDate.now();
        String str = date.toString();
        System.out.println("LocalDate to String: " + str);
    }
}

Output:

LocalDate to String: 2023-08-27

2. DateTimeFormatter와 format()을 이용한 방법

DateTimeFormatter와 format()을 이용하여 LocalDate를 문자열로 변환할 수 있습니다.

LocalDate.format()은 인자로 전달된 format에 맞게 문자열을 만들고 리턴합니다.

  • DateTimeFormatter.ISO_DATEyyyy-MM-dd 형식으로 문자열 생성
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;

public class Example {

    public static void main(String[] args) {

        LocalDate date = LocalDate.now();
        DateTimeFormatter formatter = DateTimeFormatter.ISO_DATE;

        String str = date.format(formatter);
        System.out.println("LocalDate to String: " + str);
    }
}

Output:

LocalDate to String: 2023-08-27

3. 다른 날짜 형식으로 변환

DateTimeFormatter에서 기본으로 제공하는 패턴 대신에, DateTimeFormatter.ofPattern()으로 Custom pattern을 전달할 수도 있습니다.

아래 예제에서는 "MMM dd, yyyy" 패턴으로 formatter를 생성하여 날짜 문자열을 변환하였습니다.

import java.time.LocalDate;
import java.time.format.DateTimeFormatter;

public class Example {

    public static void main(String[] args) {

        LocalDate date = LocalDate.now();
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MMM dd, yyyy");

        String str = date.format(formatter);
        System.out.println("LocalDate to String: " + str);
    }
}

Output:

LocalDate to String: Aug 27, 2023

또한, 아래와 같이 다양한 형식으로 날짜 문자열을 만들 수 있습니다.

// 2023-08-27
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");

// 2023년 08월 27일
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy년 MM월 dd일");