首页 > 其他 > 详细

EXCL poi导入

时间:2014-07-21 09:33:45      阅读:454      评论:0      收藏:0      [点我收藏+]
    public static void importExcel2(File file) throws Exception {
        InputStream is = new FileInputStream(file); 
        Workbook workbook;
        try {
            if(file.getName().indexOf(".xlsx")>-1){
                workbook = new XSSFWorkbook(is);
            } else {
                workbook = new HSSFWorkbook(is);
            }
            //HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(fileToBeRead)); //2003 创建对Excel工作簿文件的引用
            //XSSFWorkbook workbook = new XSSFWorkbook(new FileInputStream(fileToBeRead)); //2007,2010 创建对Excel工作簿文件的引用
            Sheet sheet = workbook.getSheetAt(0);//创建对工作表的引用
            int rows = sheet.getPhysicalNumberOfRows();// 获取表格的
            for (int r = 1; r < rows; r++) { // 循环遍历表格的行
                String value = null ;
                Row row = sheet.getRow(r); // 获取单元格中指定的行对象
                if (row != null) {
                    int cells = row.getPhysicalNumberOfCells();// 获取单元格中指定列对象
                    System.out.println(cells+"列数。。。");
//                    for (short c = 0; c < cells; c++) { // 循环遍历单元格中的列
//                        Cell cell = row.getCell((short) c); // 获取指定单元格中的列
//                        if (cell != null) {
//                            if (cell.getCellType() == Cell.CELL_TYPE_STRING) { // 判断单元格的值是否为字符串类型
//                            //    value += cell.getStringCellValue() + ",";
//                                System.out.println(cell.getStringCellValue()+"==="+cell.getCellType());
//                            } else if(cell.getCellType() == Cell.CELL_TYPE_NUMERIC){
//                                System.out.println(cell.getDateCellValue()+"==="+cell.getCellType());
//                                //DateUtil.isCellInternalDateFormatted(arg0);
//                            }
//                            
//                        }
//                    }
                    CaseInfor caseInfor=new CaseInfor();
                    if(row.getCell(0)!=null&&row.getCell(0).getCellType()==Cell.CELL_TYPE_STRING){
                        caseInfor.title=row.getCell(0).getStringCellValue();
                    }
                    if(row.getCell(1)!=null){
                        if(row.getCell(1)!=null&&isCellDateFormatted(row.getCell(1))){
                            caseInfor.acceptTime=row.getCell(1).getDateCellValue();
                        }else{flash.put("error", "受理时间非日期格式");
                        list(null,null);}
                    }
                    if(row.getCell(2)!=null){
                        if(isCellDateFormatted(row.getCell(2))){
                            caseInfor.deadTime=row.getCell(2).getDateCellValue();
                        }else{flash.put("error", "办案期限非日期格式");
                        list(null,null);}
                    }
                    if(row.getCell(3)!=null&&row.getCell(3).getCellType()==Cell.CELL_TYPE_STRING){
                        caseInfor.department=row.getCell(3).getStringCellValue();
                    }
                    if(row.getCell(4)!=null&&row.getCell(4).getCellType()==Cell.CELL_TYPE_STRING){
                        caseInfor.process=row.getCell(4).getStringCellValue();
                    }
                    if(row.getCell(5)!=null&&row.getCell(5).getCellType()==Cell.CELL_TYPE_STRING){
                        caseInfor.account=row.getCell(5).getStringCellValue();
                    }
                    if(row.getCell(6)!=null&&row.getCell(6).getCellType()==Cell.CELL_TYPE_STRING){
                        caseInfor.information=row.getCell(6).getStringCellValue();
                        System.out.println(row.getCell(6).getStringCellValue());
                    }
                    if(row.getCell(7)!=null&&row.getCell(7).getCellType()==Cell.CELL_TYPE_STRING){
                        caseInfor.mandatory=row.getCell(7).getStringCellValue();
                    }
                    caseInfor.save();
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        flash.put("success", "导入成功");
           list(null,null);
    }
    public static boolean isCellDateFormatted(Cell cell) {  
        if (cell == null) return false;  
        boolean bDate = false;  
        if(cell.getCellType() == Cell.CELL_TYPE_NUMERIC){
             double d = cell.getNumericCellValue();  
             if ( DateUtil.isValidExcelDate(d) ) {  
                 CellStyle style = cell.getCellStyle();  
                 if(style==null) return false;  
                 int i = style.getDataFormat();  
                 String f = style.getDataFormatString();  
                 bDate = DateUtil.isADateFormat(i, f);  
             }  
        }
        return bDate;  
    } 

EXCL poi导入,布布扣,bubuko.com

EXCL poi导入

原文:http://www.cnblogs.com/kedoudejingshen/p/3856161.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!