鼠扑 发表于 2023-7-31 01:05:04

Java 基于Apache POI实现Excel读写操作

实践环境

Win10
Java JDK1.8
代码实现

pom.xml配置
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.shouke</groupId>
    <artifactId>example</artifactId>
    <version>1.0</version>

    <properties>
      <java.version>1.8</java.version>
      <maven.compiler.source>${java.version}</maven.compiler.source>
      <maven.compiler.target>${java.version}</maven.compiler.target>
      <poi.ooxml.version>4.1.2</poi.ooxml.version>
    </properties>

    <dependencies>
      <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>${poi.ooxml.version}</version>
      </dependency>
    <dependencies>      
</project>读取Excel

代码实现

exmple.xml
https://img2023.cnblogs.com/blog/1569452/202307/1569452-20230731003149779-1976684574.png
import org.apache.poi.ss.usermodel.*;import org.apache.poi.xssf.usermodel.XSSFWorkbook;import java.io.FileInputStream;import java.util.Iterator;public class JavaStudy {    public static void readExcel(String filePath) throws Exception {      //获取文件流      FileInputStream inputStream = new FileInputStream(filePath);      //1.创建工作簿      Workbook workbook = new XSSFWorkbook(inputStream);      //2.得到Sheet表//      Sheet sheet = workbook.getSheet("Sheet1"); // 通过Sheet名称获取      Sheet sheet = workbook.getSheetAt(0); // 通过索引获取 //获取第1个Sheet表      //3.获取行      Row row = sheet.getRow(0); // 获取第1行 // 注意:行索引从0开始      System.out.println(sheet.getFirstRowNum()); // 获取首行(内容行)索引// 输出:0      System.out.println(sheet.getLastRowNum()); // 获取最后行(内容行)索引 // 输出:5      //4.获取单元格      Cell cell = row.getCell(0); // 获取行的第0个元      //5.获取单元格的值      System.out.println(getValue(cell)); // 输出:姓名      System.out.println(row.getFirstCellNum()); // 获取当前行第一个内容单元格索引 // 输出:0      System.out.println(row.getLastCellNum()); // 获取当前行最后内容单元格往后下一个单元格的索引 // 输出:7 // 输出值为:最后内容单元格索引+1      // 遍历当前行内容化单元格      // 方法1:      Iterator cellIterator = row.cellIterator();      while (cellIterator.hasNext()) {            cell = cellIterator.next();            System.out.println(cell);      }      // 方法2:      row.forEach(currCell -> {            System.out.print(currCell+", ");            System.out.println(currCell.getCellType());      });      // 遍历获取所有内容行单元格的值      for (int rowIndex=0; rowIndex
页: [1]
查看完整版本: Java 基于Apache POI实现Excel读写操作