EasyPoi 导入Excel获取不到第一列的问题(解决)

您所在的位置:网站首页 excel第一列不显示 EasyPoi 导入Excel获取不到第一列的问题(解决)

EasyPoi 导入Excel获取不到第一列的问题(解决)

#EasyPoi 导入Excel获取不到第一列的问题(解决)| 来源: 网络整理| 查看: 265

EasyPoi 导入Excel获取不到第一列的问题 但是我设置了2**直接用表头将标题也包含进去了,这就会导致这个扫描不到第一列的问题**正确的设置应该是很多人对表头和标题分不清楚

这里我举个例子(我遇到的问题) 我的Excel模板是这样的 在这里插入图片描述 但是测试好多次 扫描不到第一列(产品唯一标识)的数据 获取到的结果 在这里插入图片描述

第一列标识的modelId 一直是null

错误的代码

@PostMapping("upload") @Transactional public Response upload(CustomerPrice customerPrice,@RequestParam("file") MultipartFile multipartFile) throws Exception { try { ImportParams params = new ImportParams(); //标题和表头不能混合起来 用表头 = 2来代替标题 这样会导致第一列读取不到 params.setHeadRows(2); // params.setTitleRows(1); List result = ExcelImportUtil.importExcel(multipartFile.getInputStream(), CustomerPrice.class, params); System.out.println(result.toString()); CustomerPrice customerPrice1 = new CustomerPrice(); //第一步 先删除 customerPriceService.deleteByCompany(customerPrice.getMerchantCompanyId(),customerPrice.getCustomerCompanyId()); result.forEach(item->{ //第二步 添加公司id item.setCustomerCompanyId(customerPrice.getCustomerCompanyId()); item.setMerchantCompanyId(customerPrice.getMerchantCompanyId()); System.out.println(item.toString()); }); //第三步 将改造后的list放入对象 执行添加 customerPrice1.setCustomerPrices(result); customerPriceService.insert(customerPrice1); return ResponseFactory.bool().message("导入成功!"); } catch (Exception e){ e.printStackTrace(); throw new BizException("导入失败,请检查参数!"); } }

乍一看 没啥错误的 但是主要的问题就是在于这个

params.setHeadRows(2);

我这个Excel 表是 标题一行 表头一行

但是我设置了2

很多人和我同样的错误 (因为代码是我直接copy的)

直接用表头将标题也包含进去了,这就会导致这个扫描不到第一列的问题 正确的设置应该是 params.setHeadRows(1);//表头 params.setTitleRows(1);//标题 很多人对表头和标题分不清楚

在这里插入图片描述 所以你在有标题的时候,titleRows设置1,如果没有的话,设置0或者不设置(默认是0)

这样问题就解决了 在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3