[java] Apache POI를 사용하여 Excel 파일에서 데이터 읽기
Apache POI는 Java에서 Microsoft Office 파일 형식인 Excel, Word, PowerPoint를 다룰 수 있는 라이브러리입니다. 이번 글에서는 Apache POI를 사용하여 Java 코드로 Excel 파일에서 데이터를 읽는 방법에 대해 알아보겠습니다.
Apache POI 라이브러리 추가하기
먼저, 프로젝트에 Apache POI 라이브러리를 추가해야 합니다. Maven을 사용한다면 pom.xml
에 다음의 의존성을 추가해주세요:
<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>
만약 Maven이나 Gradle을 사용하지 않는다면, Apache POI 라이브러리를 공식 웹사이트에서 다운로드하여 프로젝트에 추가해주세요.
Excel 파일에서 데이터 읽기
이제 Apache POI를 사용하여 Excel 파일에서 데이터를 읽기 위한 코드를 작성해보겠습니다.
import java.io.FileInputStream;
import java.io.IOException;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.poi.ss.usermodel.*;
public class ExcelReader {
public static void main(String[] args) {
// 읽어올 Excel 파일 경로
String filePath = "path/to/excel/file.xlsx";
try (FileInputStream fis = new FileInputStream(filePath);
Workbook workbook = new XSSFWorkbook(fis)) {
// 첫 번째 시트 선택
Sheet sheet = workbook.getSheetAt(0);
// 각 행을 순회하며 데이터 출력
for (Row row : sheet) {
for (Cell cell : row) {
String cellData = "";
// 셀의 데이터 타입에 따라 처리
switch (cell.getCellType()) {
case STRING:
cellData = cell.getStringCellValue();
break;
case NUMERIC:
cellData = String.valueOf(cell.getNumericCellValue());
break;
case BOOLEAN:
cellData = String.valueOf(cell.getBooleanCellValue());
break;
default:
// 다른 데이터 타입이 있는 경우 처리
break;
}
System.out.print(cellData + " ");
}
System.out.println();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
위의 코드에서 filePath
변수를 실제 Excel 파일의 경로로 설정해주세요. 코드를 실행하면 Excel 파일의 첫 번째 시트에 있는 데이터가 출력됩니다.
결론
Apache POI를 사용하면 Java로 Excel 파일에서 데이터를 읽는 것이 간단해집니다. 이를 활용하여 Excel 파일에서 데이터를 추출하여 다양한 작업을 수행할 수 있습니다.
더 자세한 내용은 Apache POI 공식 문서를 참고하시기 바랍니다.