当前位置: 首页 > news >正文

java 解析excel

在Java中解析Excel文件,可以使用Apache POI库。以下是一个简单的例子,展示如何使用Apache POI读取一个Excel文件(假设为.xlsx格式)的内容。

首先,确保你的项目中包含了Apache POI的依赖。如果你使用Maven,可以添加以下依赖到你的pom.xml文件中:

<dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>4.1.2</version></dependency>

1、以下是一个简单的Java程序,用于读取Excel文件中的数据(参数类型为文件):

@Overridepublic void UploadFile(MultipartFile multipartFile) {File file = null;try {file = File.createTempFile("temp", multipartFile.getOriginalFilename());multipartFile.transferTo(file);FileInputStream inputStream = new FileInputStream(file);Workbook workbook = new XSSFWorkbook(inputStream);Sheet sheet = workbook.getSheetAt(0); // 读取第一个工作表for (Row row : sheet) { // 迭代每一行log.info("开始处理"+row.getRowNum()+"行数据"); // 换行,表示一行数据结束for (Cell cell : row) { // 迭代每一列if(row.getRowNum()>0){switch (cell.getCellTypeEnum()) {case STRING:log.info(cell.getStringCellValue()+ "\t");break;case NUMERIC:log.info(cell.getNumericCellValue()+ "\t");break;case BOOLEAN:log.info(cell.getBooleanCellValue()+ "\t");break;case FORMULA:log.info(cell.getCellFormula()+ "\t");break;default:break;}}}}//关闭文件输入流inputStream.close();} catch (IOException e) {e.printStackTrace();}}

2、本地资源:以下是一个简单的Java程序,用于读取Excel文件中的数据(参数类型为文件路径 如:静态资源下templates/excel/excel/file.xlsx

@Overridepublic void UploadFile(String excelFilePath) {try {FileInputStream inputStream = new FileInputStream(new File(excelFilePath));Workbook workbook = new XSSFWorkbook(inputStream);Sheet sheet = workbook.getSheetAt(0); // 读取第一个工作表for (Row row : sheet) { // 迭代每一行log.info("开始处理"+row.getRowNum()+"行数据"); // 换行,表示一行数据结束for (Cell cell : row) { // 迭代每一列if(row.getRowNum()>0){switch (cell.getCellTypeEnum()) {case STRING:log.info(cell.getStringCellValue()+ "\t");break;case NUMERIC:log.info(cell.getNumericCellValue()+ "\t");break;case BOOLEAN:log.info(cell.getBooleanCellValue()+ "\t");break;case FORMULA:log.info(cell.getCellFormula()+ "\t");break;default:break;}}}}//关闭文件输入流inputStream.close();} catch (IOException e) {e.printStackTrace();}}

3、网络资源:以下是一个简单的Java程序,用于读取Excel文件中的数据(参数类型为文件路径网络资源 如:http://192.168.xx.xx:8080​​​​​​/upload/gjcTemporaryStorage/5ca5486f-599b-47d6-a1cd-552c46b47d48.xls)

@Overridepublic void UploadFile(String excelFilePath) {try {InputStream inputStream = new URL(enterDetails.getFileSavePath()).openStream();Workbook workbook = new XSSFWorkbook(inputStream);Sheet sheet = workbook.getSheetAt(0); // 读取第一个工作表for (Row row : sheet) { // 迭代每一行log.info("开始处理"+row.getRowNum()+"行数据"); // 换行,表示一行数据结束for (Cell cell : row) { // 迭代每一列if(row.getRowNum()>0){switch (cell.getCellTypeEnum()) {case STRING:log.info(cell.getStringCellValue()+ "\t");break;case NUMERIC:log.info(cell.getNumericCellValue()+ "\t");break;case BOOLEAN:log.info(cell.getBooleanCellValue()+ "\t");break;case FORMULA:log.info(cell.getCellFormula()+ "\t");break;default:break;}}}}//关闭文件输入流inputStream.close();} catch (IOException e) {e.printStackTrace();}}

运行结果


http://www.mrgr.cn/news/36790.html

相关文章:

  • 【C++类的设计】题目(二):设计圆柱Column类
  • vue实现文件解压缩
  • andon安灯系统让生产异常快速高效解决
  • 智能充电时代:蓝牙模块在BMS系统中的关键角色
  • 1. go 环境
  • 精密单轴纵切自动车床
  • 远程访问软路由
  • Spring Boot 快速入门教程
  • 十三 系统架构设计(考点篇)
  • MySQL 之事务详解
  • 一文掌握python单元测试unittest(二)
  • UniApp基于xe-upload实现文件上传组件
  • Vue中input框自动聚焦
  • 餐厅包厢预订小程序
  • 第十二章RAS extension support
  • FineReport多数据源报表
  • 聊一聊软件测试的基本原则有哪些
  • 自闭症摘帽学校评价:家长共同推崇的信赖之选
  • Jenkins的安装
  • 王霞培优100分(全套)