POI读取Excel

第一次接触POI,看了一上午英文文档,不过还好,感觉还是有很大收获的。下了jar包,下午自己动手写了一个读取excel的小程序。
功能很简单,就是从excel中读取数据放入list中,然后再将数据迭代显示出来,代码写的有点乱……

ReadExcel.java 用来读取数据并且返回

public class ReadExcel {
    InputStream is = null;
    Workbook wb=null;
    List<ArrayList> rowList=null;
    ArrayList<String> cellList=null;

    public List<ArrayList> getStudent(){
        try {
            is = new FileInputStream(new File("d://a.xlsx"));
            wb = WorkbookFactory.create(is);
        } catch (Exception e) {
            e.printStackTrace();
        }  
        //int sheetnum=wb.getNumberOfSheets();
        //int sheet_index=wb.getActiveSheetIndex();
        Sheet sheet = wb.getSheetAt(0);  
        rowList=new ArrayList<ArrayList>();
        for(Row row : sheet){ 
            cellList=new ArrayList<String>();
            for(Cell cell : row){  
                switch(cell.getCellType()){  
                    case Cell.CELL_TYPE_NUMERIC:  
                        if(DateUtil.isCellDateFormatted(cell)){  
                            cellList.add(cell.getDateCellValue()+" ");  
                        }else{  
                            cellList.add(cell.getNumericCellValue()+" ");  
                        }  
                        break;  
                    case Cell.CELL_TYPE_FORMULA:  
                        cellList.add(cell.getCellFormula()+" ");  
                        break;  
                    case Cell.CELL_TYPE_STRING:  
                        cellList.add(cell.getRichStringCellValue().toString()+" ");
                        break;                    
                }  
            }  
            rowList.add(cellList); 
        }
        return rowList;
    }
}

测试代码,将数据在控制台输出

ReadExcel read=new ReadExcel();
List<ArrayList> ary1=read.getStudent();
for(ArrayList<String> arrayList:ary1){
    for(String str:arrayList){
        System.out.print(str);
    }
    System.out.println("");
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值