package atest;
import java.io.FileInputStream;
import java.io.InputStream;
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;
import com.common.BlankUtil;
public class ExcelTest {
public static void main(String[] args) throws Exception{
InputStream inputStream=new FileInputStream("C:/test.xls");
POIFSFileSystem fs=new POIFSFileSystem(inputStream);
HSSFWorkbook wb=new HSSFWorkbook(fs);//获取整个Excel
HSSFSheet sheet=wb.getSheetAt(0);//获取第一个sheet
int rowNum=sheet.getLastRowNum();//最后一行的行号,相当于总行数-1
int cellNum=0;//获取每一行的列的数目
HSSFRow row=null;
int cellType=0;//每一格的类型,比如是String,Double,Date
for(int i=0;i<=rowNum;i++){
row=sheet.getRow(i);//获取每一行
cellNum=row.getLastCellNum();//获取每一行的列的数目
for(int j=0;j<cellNum;j++){
HSSFCell cell=row.getCell((short)j);
if(!BlankUtil.isBlank(cell)){
cellType=cell.getCellType();
if(HSSFCell.CELL_TYPE_NUMERIC==cellType){//如果是Number类型的格子
System.out.println("第"+(i+1)+"行"+",第"+(j+1)+"列的值为:"+cell.getNumericCellValue());
}
if(HSSFCell.CELL_TYPE_STRING==cellType){//如果是String类型的格子
System.out.println("第"+(i+1)+"行"+",第"+(j+1)+"列的值为:"+cell.getStringCellValue());
}
}else{
System.out.println("第"+(i+1)+"行"+",第"+(j+1)+"列的值为:"+"值为空");
}
}
}
System.out.println("test");
}
}