본문 바로가기
Java

Java에서 엑셀이용하기 (xlsl, xls)

by 전재훈 2014. 6. 19.
반응형

apache poi를 이용하는 방법이에요


http://poi.apache.org/ 로 접속해서 


윈도우라면

poi-bin-3.10-FINAL-20140208.zip  이런식으로 된 파일


리눅스라면

poi-bin-3.10-FINAL-20140208.tar.gz 이런식으로 된 파일


을 다운받아서 압축을 풀어주고


dom4j-1.6.1.jar
poi-3.9-20121203.jar
poi-ooxml-3.9-20121203.jar
poi-ooxml-schemas-3.9-20121203.jar
xmlbeans-2.3.0.jar

라이브러리를 추가해줍니다



그리고 아래의 예제소스를 따라해주면된되요
예제소스는 xlsx 확장자 기준

public static void main ( String args[] ) {
// TODO 예제입니다 맞춰서 변경해주세요
excelTest( );
}
public static void excelTest(  ){
try {
FileInputStream fis = new FileInputStream( "D:/fildname.xlsx" ) ;
XSSFWorkbook workbook = new XSSFWorkbook( fis);
XSSFSheet sheet = workbook.getSheetAt(0);
int sheetCn = workbook.getNumberOfSheets( );
int rows = sheet.getPhysicalNumberOfRows();
int cells = sheet.getRow(1).getPhysicalNumberOfCells();
XSSFRow row;
XSSFCell cell;
String value = "";
for( int r = 0 ; r < rows ; r ++ ) {
row = sheet.getRow(r);
if( row != null ) {
for( int c = 0 ; c < cells ; c++ ) {
cell = row.getCell(c) ;
if( cell != null ) {
switch (cell.getCellType()) {
case XSSFCell.CELL_TYPE_FORMULA:
value = cell.getCellFormula();
break;
case XSSFCell.CELL_TYPE_NUMERIC:
value = "" + cell.getNumericCellValue();
break;
case XSSFCell.CELL_TYPE_STRING:
value = "" + cell.getStringCellValue();
break;
case XSSFCell.CELL_TYPE_BLANK:
value = "[null 아닌 공백]";
break;
case XSSFCell.CELL_TYPE_ERROR:
value = "" + cell.getErrorCellValue();
break;
default:
}

System.out.println( value);
}
}
}
}
} catch (FileNotFoundException e) {
System.out.println("fileNotFound");
e.printStackTrace();
} catch (IOException e) {
System.out.println("ioException");
e.printStackTrace();
}
}

만약 xls를 사용하고 싶으시면
 
   HSSFWorkbook workBook  =  new HSSFWorkbook(new FileInputStream(new File(filePath)));
   
   HSSFSheet sheet    =  null;
   
   HSSFRow row     =  null;
   
   HSSFCell cell    =  null;

처럼 변수만 바꿔주시고 그대로 적용하면 됩니다요~~~


반응형

댓글