java使用Workbook实现excel文件的读取 兼容后缀名xls和xlsx

		//获得输入流 (file:前端传到后台的文件 @RequestParam("file") MultipartFile file)
        InputStream inputStream = file.getInputStream();
        Workbook workbook  = null;
        //获得文件的后缀名
        String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
        //根据后缀名判断
        if(suffix.equals(".xlsx")){
             workbook = new XSSFWorkbook(inputStream);//Excel 2007
        }else if(suffix.equals(".xls")){
             workbook = new HSSFWorkbook(inputStream);//Excel 2003
        }
        Row row = null;
        rows = sheet.getPhysicalNumberOfRows();
        num = rows;
		//循环sesheet页中数据(我的第一行是标题所以num+1)从第二行开始,第一行是标题
        for (int i = 1; i < num + 1; i++) {
              row = sheet.getRow(i+1);
				//第一列
              if (row.getCell(0) != null) {
                  //这时候已经获取到了表格的某一个数据,根据自己实际情况存入数据库
                  //我获取的是带小数的数据所以用Double,根据实际需求修改
                  Double unit_num = row.getCell(0).getNumericCellValue();
               }
				//第二列 
               if (row.getCell(1) != null) {
                   //获取的是字符串类型的数据所以用String,不加.getString()会报错
                   String road_line = row.getCell(1).getRichStringCellValue().getString();
               }
               xtJzUnitService.insertXtJzUnit();//调用函数,存到数据库中
       }
上一篇:webuploader文件上传


下一篇:Java导出Excel(项目实战Demo)