sunny123456

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

java:poi:上传excel文件并解析,处理数据(含postman测试调用)

直接上代码:

  1. // excel导入
  2. @CrossOrigin
  3. @PostMapping(value = "/batch_sms_send/parseExcel", produces = {"application/json;charset=UTF-8"})
  4. public void parseExcel(@RequestParam("file") MultipartFile file,HttpServletRequest request, HttpServletResponse response) {
  5. try {
  6. // @RequestParam("file") MultipartFile file 是用来接收前端传递过来的文件
  7. // 1.创建workbook对象,读取整个文档
  8. InputStream inputStream = file.getInputStream();
  9. POIFSFileSystem poifsFileSystem = new POIFSFileSystem(inputStream);
  10. HSSFWorkbook wb = new HSSFWorkbook(poifsFileSystem);
  11. // 2.读取页脚sheet
  12. HSSFSheet sheetAt = wb.getSheetAt(0);
  13. // 3.循环读取某一行
  14. for (Row row : sheetAt) {
  15. //先将第二列手机号转换为string格式
  16. row.getCell(1).setCellType(Cell.CELL_TYPE_STRING);
  17. // 4.读取每一行的单元格
  18. String stringCellValue="";
  19. String stringCellValue2="";
  20. if(row.getCell(0)!=null && row.getCell(1)!=null)
  21. stringCellValue = row.getCell(0).getStringCellValue(); // 第一列数据
  22. stringCellValue2 = row.getCell(1).getStringCellValue();// 第二列
  23. // 写多少个具体看大家上传的文件有多少列.....
  24. // 测试是否读取到数据,及数据的正确性
  25. System.out.println(stringCellValue);
  26. System.out.println(stringCellValue2);
  27. }
  28. } catch (Exception e) {
  29. // TODO Auto-generated catch block
  30. e.printStackTrace();
  31. }
  32. }

pom:

  1. <dependency>
  2. <groupId>org.apache.poi</groupId>
  3. <artifactId>poi-ooxml</artifactId>
  4. <version>3.14</version>
  5. </dependency>

 

postman调用方法:

Content-Type    multipart/form-data  (这里不设置应该postman会自动识别,应该也可以)

 

excel文件内容:

代码中取出值并打印:

参考:

https://blog.csdn.net/zxs281/article/details/80856251 

</article>

https://blog.csdn.net/weixin_38750084/article/details/105796044

posted on 2022-03-23 19:49  sunny123456  阅读(630)  评论(0编辑  收藏  举报