poiによるexcelの読み取り操作の例
利用するのはpoi 3.7のバージョンは、Dディスクの下のtestを試してみます.xlsファイルによる読み取り操作
package com.cn;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.Iterator;
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;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
public class Test {
public static void main(String []args){
try {
InputStream input = new FileInputStream("d:\\test.xls");
POIFSFileSystem fs = new POIFSFileSystem(input);
HSSFWorkbook wb = new HSSFWorkbook(fs);
HSSFSheet sheet = wb.getSheetAt(0);
Iterator<?> rows = sheet.rowIterator();
while(rows.hasNext()){
HSSFRow row = (HSSFRow)rows.next();
System.out.println("Row#"+row.getRowNum());
Iterator<?> cells = row.cellIterator();
while(cells.hasNext()){
HSSFCell cell = (HSSFCell)cells.next();
System.out.println("Cell#"+cell.getColumnIndex());
switch(cell.getCellType()){
case HSSFCell.CELL_TYPE_NUMERIC:
System.out.println(cell.getNumericCellValue());
break;
case HSSFCell.CELL_TYPE_STRING:
System.out.println(cell.getStringCellValue());
break;
case HSSFCell.CELL_TYPE_BOOLEAN:
System.out.println(cell.getBooleanCellValue());
break;
case HSSFCell.CELL_TYPE_FORMULA:
System.out.println(cell.getCellFormula());
break;
default:
System.out.println("unsuported cell type");
break;
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}