[java] Apache POI를 사용하여 Excel 파일의 특정 열 가져오기

Excel 파일에서 데이터를 읽고 처리하는 작업은 많은 개발자들이 자주 진행하는 작업 중 하나입니다. Apache POI는 Java에서 Excel 파일을 다루기 위한 라이브러리로 많이 사용됩니다. 이번 포스트에서는 Apache POI를 사용하여 Excel 파일의 특정 열을 가져오는 방법에 대해 알아보겠습니다.

Apache POI 추가하기

처음으로 Apache POI를 사용하기 위해서는 먼저 해당 라이브러리를 프로젝트에 추가해야 합니다. Maven을 사용하는 경우, pom.xml 파일에 아래 의존성을 추가하면 됩니다.

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>4.1.2</version>
</dependency>

Gradle을 사용하는 경우, build.gradle 파일에 아래 의존성을 추가합니다.

implementation 'org.apache.poi:poi:4.1.2'

의존성을 추가한 후에는 빌드 도구를 실행하여 라이브러리를 다운로드하고 프로젝트에 추가합니다.

Excel 파일에서 특정 열 가져오기

이제 Apache POI를 사용하여 Excel 파일에서 특정 열을 가져오는 방법에 대해 알아보겠습니다.

import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import java.io.File;
import java.io.IOException;

public class ExcelReader {

    public static void main(String[] args) {
        String filePath = "filepath.xlsx"; // 읽어올 Excel 파일 경로
        int columnIndex = 1; // 가져올 열의 인덱스 (0부터 시작)

        try (Workbook workbook = new XSSFWorkbook(new File(filePath))) {
            Sheet sheet = workbook.getSheetAt(0); // 첫 번째 시트 가져오기

            for (Row row : sheet) {
                Cell cell = row.getCell(columnIndex);

                if (cell != null) {
                    String cellValue = cell.getStringCellValue();
                    System.out.println(cellValue);
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}

위 예시 코드는 filepath.xlsx에서 두 번째 열을 가져와서 출력하는 코드입니다. Workbook 객체를 사용하여 Excel 파일을 열고, Sheet 객체를 사용하여 시트를 가져옵니다. 그리고 각 행 (Row)을 순회하면서 해당 열 (Cell)의 값을 가져와 출력합니다.

결론

Apache POI를 사용하면 Java에서 Excel 파일을 다루는 작업이 편리해집니다. 이번 포스트에서는 Apache POI를 사용하여 Excel 파일의 특정 열을 가져오는 방법을 알아보았습니다. Apache POI의 다양한 기능을 활용하여 데이터 처리 작업을 더욱 효율적으로 진행할 수 있습니다.