Java 라이브러리 Apache Commons CSV 사용법

Apache Commons CSV(아파치 커먼즈 CSV)란, CSV(콤마 세퍼레이티드 밸류) 포맷의 파일을 읽고 쓰기 위한 Java용 라이브러리이다.

개요

CSV 파일을 한 줄씩 읽고 쉼표나 탭으로 분할하여 읽을 수도 있지만, 개발자의 본래의 목적은 CSV를 파싱하는 것이 아니라, CSV의 데이터를 읽어 가공, 전달, 저장 등 를 목표로 해야 한다.

지원되는 CSV 형식

커스텀 포맷은 fluent style API를 이용하여 만들 수 있다.

라이브러리 적용

dependencies {
    implementation 'org.apache.commons:commons-csv:1.10.0'
}

라이브러리 사용하여 CSV 읽기

CSV 파일을 읽는 예제는 아래와 같다.

package com.devkuma.apache.commons;

import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;

import org.apache.commons.csv.CSVFormat;
import org.apache.commons.csv.CSVRecord;

public class ReadCSV {

    public static void main(String[] args) {
        try {
            Reader in = new FileReader("file.csv");
            Iterable<CSVRecord> records = CSVFormat.EXCEL.builder().setHeader().build().parse(in);
            for (CSVRecord record : records) {
                String lastName = record.get("Last Name");
                String firstName = record.get("First Name");

                System.out.print(lastName + " ");
                System.out.println(firstName);
            }
        } catch (IOException e) {
            throw new RuntimeException(e);
        }

        System.out.println("Done");
    }
}

file.csv의 내용은 다음과 같다.

"Last Name","First Name"
aaaa,bbbb
cccc,dddd
eeee,ffff

실행 결과:

aaaa bbbb
cccc dddd
eeee ffff
Done



최종 수정 : 2024-01-18