[java] Apache POI를 사용하여 Excel 파일의 셀 범위 읽기

Excel 파일은 비즈니스에서 많이 사용되는 데이터 저장 및 분석 도구입니다. Java를 사용하여 Excel 파일을 다룰 때, Apache POI라는 라이브러리를 사용할 수 있습니다. 이번 포스트에서는 Apache POI를 사용하여 Excel 파일의 셀 범위를 읽는 방법에 대해 알아보겠습니다.

필요한 라이브러리 추가하기

먼저 Maven 또는 Gradle과 같은 의존성 관리 도구를 사용하여 Apache POI 라이브러리를 프로젝트에 추가해야 합니다. 아래는 Maven을 사용하는 경우의 예시입니다.

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

셀 범위 읽기

Excel 파일을 읽기 위해 Workbook 객체를 생성해야 합니다. 그리고 Sheet 객체를 가져와서 원하는 셀 범위를 지정하고 값을 읽을 수 있습니다. 아래는 예시 코드입니다.

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

import java.io.FileInputStream;
import java.io.IOException;

public class ExcelReader {
    public static void main(String[] args) {
        try (Workbook workbook = WorkbookFactory.create(new FileInputStream("sample.xlsx"))) {
            Sheet sheet = workbook.getSheetAt(0); // 첫 번째 시트 선택

            int startRowNum = 2; // 시작 행 번호 (0부터 시작)
            int endRowNum = 5; // 종료 행 번호
            int startCellNum = 1; // 시작 열 번호 (0부터 시작)
            int endCellNum = 3; // 종료 열 번호

            for (int i = startRowNum; i <= endRowNum; i++) {
                Row row = sheet.getRow(i);

                for (int j = startCellNum; j <= endCellNum; j++) {
                    Cell cell = row.getCell(j);
                    String value = cell.toString();
                    System.out.println("Cell[" + i + "," + j + "] = " + value);
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

위의 코드에서는 sample.xlsx 파일에서 첫 번째 시트의 3x3 범위 내의 셀 값을 읽어옵니다. startRowNum, endRowNum, startCellNum, endCellNum 변수를 원하는 범위에 맞게 수정하여 사용하면 됩니다.

정리

이번 포스트에서는 Apache POI를 사용하여 Excel 파일의 셀 범위를 읽는 방법에 대해 알아보았습니다. Apache POI는 다양한 Excel 작업을 지원하는 훌륭한 라이브러리이므로 프로젝트에서 셀 범위를 읽는 작업을 수행해야 할 때 유용하게 사용될 수 있습니다.

더 자세한 정보는 Apache POI 공식 문서를 참조하세요.