[java] Java에서 Apache POI를 사용하여 Excel 파일을 열기

Apache POI는 Java로 Excel 파일을 조작할 수 있는 라이브러리입니다. 이 라이브러리를 사용하면 Java 프로그램에서 Excel 파일을 열고, 편집하고, 데이터를 읽고 쓸 수 있습니다. 이번 글에서는 Java에서 Apache POI를 사용하여 Excel 파일을 열어보겠습니다.

Apache POI 라이브러리 다운로드

먼저, Apache POI 라이브러리를 다운로드해야 합니다. 아래의 링크에서 최신 버전의 Apache POI 라이브러리를 다운로드 받을 수 있습니다.

Apache POI 다운로드 링크

다운로드한 라이브러리를 프로젝트의 라이브러리 폴더에 추가해줍니다.

Excel 파일 열기

이제 Apache POI를 사용하여 Excel 파일을 열어보겠습니다. 다음은 간단한 예시 코드입니다.

import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.io.FileInputStream;
import java.io.IOException;

public class ExcelReader {
    public static void main(String[] args) {
        try {
            FileInputStream file = new FileInputStream("파일경로/파일이름.xlsx");

            Workbook workbook = new XSSFWorkbook(file);
            Sheet sheet = workbook.getSheetAt(0);

            for (Row row : sheet) {
                for (Cell cell : row) {
                    CellType cellType = cell.getCellType();

                    if (cellType == CellType.STRING) {
                        System.out.print(cell.getStringCellValue() + "\t");
                    } else if (cellType == CellType.NUMERIC) {
                        System.out.print(cell.getNumericCellValue() + "\t");
                    } else if (cellType == CellType.BOOLEAN) {
                        System.out.print(cell.getBooleanCellValue() + "\t");
                    }
                }
                System.out.println();
            }

            workbook.close();
            file.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

위 코드에서 파일경로파일이름 부분을 열고자 하는 Excel 파일의 경로와 이름으로 변경해주어야 합니다.

위 코드는 FileInputStream을 사용하여 Excel 파일을 읽어들이고, XSSFWorkbook 객체를 생성하여 파일을 엽니다. 그 후 첫 번째 Sheet를 가져와서 각 Cell의 값을 타입에 따라 읽고 출력합니다. 마지막으로 사용이 끝난 파일과 워크북을 닫아줍니다.

마무리

이렇게 Java에서 Apache POI를 사용하여 Excel 파일을 열 수 있습니다. Apache POI는 Excel 파일을 조작할 수 있는 다양한 기능을 제공하기 때문에, Excel 파일을 다루어야 하는 Java 프로그램을 개발할 때 유용하게 사용할 수 있습니다.

더 자세한 내용은 Apache POI 공식 문서를 참고하시기 바랍니다.