[java] OpenCSV를 사용하여 CSV 파일에 새로운 행을 추가하는 방법은?

먼저, OpenCSV 라이브러리를 프로젝트에 추가해야 합니다. Maven을 사용하는 경우, pom.xml 파일에 다음 의존성을 추가합니다:

<dependency>
  <groupId>com.opencsv</groupId>
  <artifactId>opencsv</artifactId>
  <version>5.3</version>
</dependency>

Gradle을 사용하는 경우, build.gradle 파일에 다음 종속성을 추가합니다:

implementation 'com.opencsv:opencsv:5.3'

이제 OpenCSV를 사용하여 CSV 파일에 새로운 행을 추가할 수 있습니다. 아래는 간단한 예제 코드입니다.

import com.opencsv.CSVWriter;

import java.io.FileWriter;
import java.io.IOException;

public class AddRowToCSV {
    public static void main(String[] args) {
        String csvFilePath = "path/to/your/csv/file.csv";

        try {
            // CSVWriter 객체 생성
            CSVWriter writer = new CSVWriter(new FileWriter(csvFilePath, true));

            // 새로운 행의 데이터 배열 생성
            String[] newRow = {"John Doe", "john.doe@example.com", "New York"};

            // 새로운 행 추가
            writer.writeNext(newRow);

            // CSVWriter 닫기
            writer.close();

            System.out.println("행이 성공적으로 추가되었습니다.");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

위의 코드에서, csvFilePath 변수에는 대상 CSV 파일의 경로를 지정해야 합니다. CSVWriter 객체를 생성하고 FileWriter 객체를 파라미터로 전달하여 새로운 행을 추가할 CSV 파일을 엽니다. writeNext() 메서드를 사용하여 새로운 행의 데이터를 CSV 파일에 기록합니다. 마지막으로, close() 메서드를 호출하여 파일을 닫습니다.

위의 예제 코드를 실행하면 지정된 CSV 파일에 새로운 행이 추가됩니다. OpenCSV는 데이터를 적절한 형식으로 처리하여 작성하므로, 데이터 내에 컴마(,) 또는 큰따옴표(“)와 같은 특수 문자가 포함되어 있어도 문제없이 처리됩니다.