'Java Excel'에 해당되는 글 1건

  1. 2013.05.23 Java 엑셀 파일 읽기
2013.05.23 15:37

Java 엑셀 파일 읽기

Java에세 엑셀 파일을 읽는 방법에는 2가지가 있다.

  1. JExcelApi를 이용하는 방법
  2. POI을 이용한 방법

첫번째 방법인 JExcelApi를 이용하는 경우 의존 라이브러리가 적고 사용이 간편한 반면 엑셀97~2003 사이의 xls만 지원하는 단점이 있다.

두번째 방법인 POI를 이용하는 경우 구현에 따라 xls뿐만 아니라 xlsx까지 읽어들일 수 있다.

1. POI를 이용한 xls 읽기

라이브러리 추가

poi.jar

poi-excelant.jar

poi-ooxml.jar

poi-ooxml-schemas.jar

poi-scratchpad.jar


프로그램 작성

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;

// 중략...

try {
	// Workbook 지정
	HSSFWorkbook workBook = new HSSFWorkbook(inputStream);

	// 읽어들이고자 하는 시트 지정
	HSSFSheet sheet = workBook.getSheetAt(0);

	// 시트에 있는 Row의 끝가지 루프
	for (int i = 1; i < sheet.getPhysicalNumberOfRows(); i++) {
		// 시트에서 Row 가져오기
		HSSFRow row = sheet.getRow(i);

		// Row에서 데이터 가져오기
	}
} catch (Exception ex) {
	throw new RuntimeException(ex.getMessage());
}


2. POI를 이용한 xlsx 읽기

라이브러리 추가

dom4j.jar

axis2-xmlbeans.jar

poi.jar

poi-excelant.jar

poi-ooxml.jar

poi-ooxml-schemas.jar

poi-scratchpad.jar


프로그램 작성

import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

//중략...

try {
	// Workbook 지정
	XSSFWorkbook workBook = new XSSFWorkbook(inputStream);

	// 시트 지정
	XSSFSheet sheet = workBook.getSheetAt(0);

	// 시트에 포함된 Row의 끝까지 루프
	for (int i = 1; i < sheet.getPhysicalNumberOfRows(); i++) {

		// 시트에서 Row 읽어 들이기
		XSSFRow row = sheet.getRow(i);

		// Row에서 데이터 가져오기
	}
} catch (Exception ex) {
	throw new RuntimeException(ex.getMessage());
}



[참고] Read Excel File (.XLS) in Java

           Read Excel File (.XLSX) in Java

Trackback 0 Comment 0