[java] Apache POI를 사용하여 Excel 파일의 시트 읽기

Apache POI 라이브러리는 Java에서 Microsoft Office 파일을 조작하는 데 사용되는 인기있는 도구입니다. 이 라이브러리를 사용하면 Java 프로그램에서 Excel 파일의 데이터를 읽고 쓸 수 있습니다. 이번 포스트에서는 Apache POI를 사용하여 Excel 파일의 시트를 읽는 방법에 대해 알아보겠습니다.

Apache POI 라이브러리 추가하기

먼저 Apache POI 라이브러리를 사용하기 위해 프로젝트에 라이브러리를 추가해야 합니다. 일반적으로 Maven이나 Gradle과 같은 빌드 도구를 사용하여 의존성을 추가할 수 있습니다. 다음은 Maven을 사용하는 경우의 예시입니다:

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

Excel 파일의 시트 읽기

Apache POI를 사용하여 Excel 파일의 시트를 읽으려면 다음 단계를 따르세요:

  1. Excel 파일을 FileInputStream으로 엽니다.
  2. 열린 FileInputStream을 기반으로하는 Workbook 인스턴스를 만듭니다.
  3. Workbook에서 원하는 시트를 얻습니다.
  4. 시트에서 원하는 셀을 읽어 데이터를 가져옵니다.

아래는 예제 코드입니다:

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

public class ExcelSheetReader {
    public static void main(String[] args) {
        try {
            // Excel 파일 열기
            FileInputStream fis = new FileInputStream("경로/파일명.xlsx");
            Workbook workbook = WorkbookFactory.create(fis);

            // 첫 번째 시트 가져오기
            Sheet sheet = workbook.getSheetAt(0);

            // 각 행을 순회하며 데이터 읽기
            for (int rowNum = 0; rowNum <= sheet.getLastRowNum(); rowNum++) {
                Row row = sheet.getRow(rowNum);
                if (row != null) {
                    for (int cellNum = 0; cellNum < row.getLastCellNum(); cellNum++) {
                        Cell cell = row.getCell(cellNum);
                        String cellValue = "";
                        if (cell != null) {
                            cellValue = cell.toString();
                        }
                        System.out.print(cellValue + " ");
                    }
                    System.out.println();
                }
            }

            // 작업 완료 후 스트림 닫기
            fis.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

위 코드는 Excel 파일의 첫 번째 시트를 읽고, 각 행의 데이터를 출력하는 기본적인 예제입니다. 경로/파일명.xlsx 부분에 읽을 Excel 파일의 경로와 이름을 입력하면 됩니다.

결론

Apache POI를 사용하여 Java에서 Excel 파일의 시트를 읽는 방법에 대해 알아보았습니다. 이를 응용하여 Excel 파일의 데이터를 가져와서 프로그램에서 활용할 수 있습니다. 더 많은 기능과 세부적인 사용 방법은 Apache POI의 공식 문서와 예제를 참조하시기 바랍니다.

참고 문서: