엑셀 자바로 다루기
위 링크에 가시면 여러 가지 API들을 소개해주고 있습니다. 이 중에서 두 개만 확인해봤습니다.
@Test
public void readByPOI() throws Exception {
POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream("Book1.xls"));
HSSFWorkbook wb = new HSSFWorkbook(fs);
HSSFSheet sheet = wb.getSheetAt(0);
HSSFRow row = sheet.getRow(0);
HSSFCell cell = row.getCell((short) 0);
assertEquals("A1한글", cell.getRichStringCellValue().toString());
}
@Test
public void readByJExel() throws Exception {
Workbook workbook = Workbook.getWorkbook(new File("Book1.xls"));
Sheet sheet = workbook.getSheet(0);
Cell a1 = sheet.getCell(0, 0);
assertEquals("A1한글", a1.getContents());
}
}
첫 번째 테스트는 아파치의 POI. 두 번째 테스트는 JExel을 사용해봤습니다.
POI는 sheet에서 cell을 바로 구해낼 수 없고, row를 통해서 cell을 받아야 하는게 좀 불편합니다. 반면에 JExel은 sheet에서 cell에 바로 접근이 가능하죠. 일단 Exel에서 cell에 담긴 정보를 읽는 API는 JExel이 더 편하네요.