Java实现多个sheet导入

controller层

public void import(@RequestParam("file") MultipartFile file){
   
if (Objects.isNull(file) || file.isEmpty()) {
   
            throw new WarnMessageException("导入文件为空");
        }
        // 文件名
        String fileName = file.getOriginalFilename();
        String suffixName = fileName.substring(fileName.lastIndexOf(SymbolConst.SEPARATION_DOT));
        if (!"xlsx".equals(suffixName)) {
   
            throw new WarnMessageException("文件格式必须为.xlsx格式");
        }
        List<TrackPointInfoExcelDTO> trackPointInfoExcelDTOList;
        List
Java中,我们可以利用Apache POI库来处理Excel文件,包括读取多个工作表(Sheet)。以下是基本步骤: 1. **添加依赖**: 首先,你需要在项目中添加Apache POI的依赖。如果你使用Maven,可以在pom.xml文件中添加: ```xml <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>最新版本号</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>最新版本号</version> </dependency> ``` 2. **创建Workbook对象**: 使用`XSSFWorkbook`(用于Excel 2007及以上版本)或`HSSFWorkbook`(用于Excel 2003及之前版本)来加载整个Excel文件,它包含了所有的工作表。 ```java FileInputStream fis = new FileInputStream("your_file.xlsx"); Workbook workbook = new XSSFWorkbook(fis); ``` 3. **遍历工作表**: 使用`Workbook`的`getSheetAt(int index)`方法获取特定索引的工作表,或者通过`getSheets()`方法获取所有的工作表并遍历它们。 ```java Sheet sheet1 = workbook.getSheetAt(0); // 获取第一个工作表 Iterator<Sheet> sheetIterator = workbook.iterator(); // 遍历所有工作表 while (sheetIterator.hasNext()) { Sheet currentSheet = sheetIterator.next(); // 对每个工作表进行操作... } ``` 4. **读取数据**: 对于每个工作表,你可以通过`Row`和`Cell`对象来读取单元格的内容。 ```java for (Row row : sheet1) { for (Cell cell : row) { String cellValue = cell.getStringCellValue(); // 如果是字符串类型 // 或者 int cellNumber = cell.getNumericCellValue(); // 如果是数值类型 // 以此类推,处理其他类型的cell... } } ``` 5. **关闭资源**: 完成操作后,记得关闭`FileInputStream`和`Workbook`。 ```java fis.close(); workbook.close(); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值