zoukankan      html  css  js  c++  java
  • Java导出Excel表格

    public void main(){

      Workbook wookbook = ExcelUtil.createWorkbook(upload);
      Sheet sheet = wookbook.getSheetAt(0);//读取第一个表格
    int rows = sheet.getPhysicalNumberOfRows();//获取表格的行数
      for (int i = 3; i < rows; i++) {//从第三行开始是输入的数据
        Row row = sheet.getRow(i);

        //空行校验
        if (row == null || isRowEmpty(row)|| row.getFirstCellNum() < 0) {//空行跳过  试过很多种方法,都不太理想,用这三种方法校验基本上就都可以校验出来了
        continue;
        }
    
    

        //获取Excel整数
        HSSFDataFormatter dataFormatter = new HSSFDataFormatter();
        String code = dataFormatter.formatCellValue(row.getCell(2));
        
        //获取公式计算后的数据
        String sellPrice =getCellValue(row.getCell(5));

      }
    }

    //校验是否为空行
    public  boolean isRowEmpty(Row row) throws Exception {
    for (int r = row.getFirstCellNum(); r < row.getLastCellNum(); r++) {
    Cell cell = row.getCell(r);
    if (cell != null && cell.getCellType() != Cell.CELL_TYPE_BLANK)
    return false;
    }
    return true;
    }

    //获取公式计算后的值
    public String getCellValue(Cell cell) throws Exception{
    int cellType = cell.getCellType();
    String cellValue = "";
    switch (cellType) {
    case HSSFCell.CELL_TYPE_NUMERIC:
    cellValue = String.valueOf(cell.getNumericCellValue());
    break;

    case HSSFCell.CELL_TYPE_FORMULA:
    try {
    cellValue = cell.getStringCellValue();
    } catch (IllegalStateException e) {
    cellValue = String.valueOf(cell.getNumericCellValue());
    }
    break;

    default:
    cellValue = cell.getStringCellValue();
    }

    return cellValue.trim();
    }
  • 相关阅读:
    ajax异步上传图片&SpringMVC后台代码
    Jdk与Tomcat配置与安装
    Jpa常用注解@Test
    关于ssh和ajax小小总结
    关于EL表达式的大小写问题。谁来帮我解答?
    关于spring管理hibernate事物
    关于session更新的问题
    ssh使用ajax异步通讯. json与对象转换的几个小问题
    通过http Post XML文件的接口 (System.Web.IHttpHandler)
    HTTP Post方法
  • 原文地址:https://www.cnblogs.com/mingyi123/p/6752330.html
Copyright © 2011-2022 走看看