반응형
첨부된 POI 라이브러리를 프로젝트의 lib 에 추가한다.
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRichTextString;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
public class 포이{
doExcel(c:\test\test.xls);
public void doExcel(String fileName){
try{
FileInputStream inputStream = new FileInputStream(fileName);
POIFSFileSystem fileSystem = new POIFSFileSystem(inputStream);
HSSFWorkbook workbook = new HSSFWorkbook(fileSystem);
int sheetNum = workbook.getNumberOfSheets();
int i=0;
short c=0;
HSSFSheet sheet = workbook.getSheetAt(0); //첫번째 쉬트
ArrayList list = new ArrayList();
Hashtable ht = null;
int rows = sheet.getPhysicalNumberOfRows(); // 행개수
for(i=0;i<rows;i++){
ht = new Hashtable();
HSSFRow row = sheet.getRow(i); //row 가져오기
if(row!=null){
int count=0;
int cells = row.getPhysicalNumberOfCells(); //셀 개수 가져오기
for(c=0;c<cells;c++){
HSSFCell cell= row.getCell(c);
if(cell != null){
String value = null;
switch(cell.getCellType()){ //각셀의 데이터값을 가져올때 맞는 데이터형으로 변환한다.
case HSSFCell.CELL_TYPE_FORMULA:
value = cell.getCellFormula();
break;
case HSSFCell.CELL_TYPE_NUMERIC:
value =""+cell.getNumericCellValue();
break;
case HSSFCell.CELL_TYPE_STRING:
value =""+cell.getStringCellValue();
break;
case HSSFCell.CELL_TYPE_BLANK:
value =""+cell.getBooleanCellValue();
break;
case HSSFCell.CELL_TYPE_ERROR:
value=""+cell.getErrorCellValue();
break;
default:
}
//hashtable 에값을 넣어 둔다.
ht.put("CELL"+cell.getCellNum(), value);
}else{
ht.put("CELL"+cell.getCellNum(), "NULL");
}
}
}
//넣어둔 hashtable 의 값을 arrayList에 담는다.
list.add(ht);
}
//list 객체 처리....(DB 삽입 등등..)
}catch (Exception e) {
e.printStackTrace();
}
}
}
반응형
'Java' 카테고리의 다른 글
java.lang.UnsupportedClassVersionError: Bad version number in .class file 에러 날때.. (0) | 2009.05.06 |
---|---|
간단한 스케줄링 데몬 만들기.. (0) | 2008.11.25 |
자바 메일 발송하기. (0) | 2008.07.28 |
자바 Serializable(객체직렬화) 를 통해 소켓 전송 수신. (2) | 2008.07.28 |
jxl.jar 이용해서 엑셀파일 읽어 들이기~ (0) | 2008.07.24 |