Java解析前端上传的Excel文件

public static List<List<String>> readExcel(MultipartFile files){
    List<List<String>> aList = new ArrayList<>();
    try{
        InputStream inputStream = files.getInputStream();
        Workbook workbook = null;
        if(files.getOriginalFilename().endsWith(".xlsx")){
            workbook = new XSSFWorkbook(inputStream);
        }else if(files.getOriginalFilename().endsWith(".xls")){
            workbook = new HSSFWorkbook(inputStream);
        }else{
            throw new HussarException("文件格式不正确");
        }
        int numberOfSheets = workbook.getNumberOfSheets();
        Sheet Sheet = workbook.getSheetAt(numberOfSheets-1);
        for (int rowNum = 5; rowNum <= Sheet.getLastRowNum(); rowNum++) {
            Row Row = Sheet.getRow(rowNum);
            if (Row != null) {
                //判断这行记录是否存在
                if (Row.getLastCellNum() < 1 || "".equals(Row.getCell(0))) {
                    continue;
                }
                List<String> rowList = new ArrayList<>();
                for(int colNum=0;colNum<Row.getLastCellNum();colNum++) {
                    //单元格如果合并时,取前一列的合并列值
                    if(Row.getCell(colNum).toString().isEmpty()) {
                        String merge = aList.size() > 0 ?                           
                                  aList.get(aList.size()-1).get(colNum) : "";
                        rowList.add(colNum, merge);
                    }else{
                        rowList.add(colNum, Row.getCell(colNum).toString());
                    }
                }
                aList.add(rowList);
            }
        }
    }catch(IOException e){
        e.printStackTrace();
    }
    return aList;
}

前端页面上传的文件格式为 MultipartFile 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
你好!关于Java上传Excel文件的功能开发,你可以使用Apache POI库来实现。下面是一个简单的步骤指南: 1. 导入Apache POI库:在你的项目中添加Apache POI的依赖,可以通过Maven或Gradle来进行配置。 2. 创建上传文件单:在你的前端页面中创建一个单,用于选择Excel文件并提交上传。 3. 后端处理上传文件:在后端代码中,你需要处理上传文件。可以使用Spring MVC或Servlet来接收文件,并保存到服务器的临时目录。 4. 解析Excel文件:使用Apache POI库来解析上传Excel文件。根据你的需求,可以选择使用HSSF(用于处理Excel 2003及之前版本)或XSSF(用于处理Excel 2007及之后版本)。 5. 读取Excel数据:通过POI库提供的API,你可以读取Excel文件中的数据。根据Excel文件的结构,使用合适的API方法来提取数据。 6. 处理Excel数据:根据你的业务需求,对读取到的Excel数据进行处理。你可以将数据存储到数据库中,进行进一步的计算或展示等操作。 7. 返回处理结果:将处理后的结果返回给前端页面,可以是成功或失败的消息,或者是处理后的数据展示。 需要注意的是,对于大型Excel文件或者需要处理大量数据的情况,建议采用流式处理(Streaming API)来避免内存溢出的问题。 希望以上步骤能对你的Java上传Excel文件功能开发有所帮助!如果还有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值